题目描述
径直经过一片麦田,不能回头,选出你认为最大的麦穗,但是当你选择一个麦穗后,就不能选第二次。
现在 surfacedust 准备经历一次亚里士多德老师很久以前给出的难题,surfacedust 有一个标准来评判这个麦穗是不是足够好。如果一个麦穗达到这个标准分,就认为这是他要选择的那个。
输入
每组实例三行,第一行是surfacedust的标准分,第二行为一个整数N(N < 100000),第三行是N个整数,依次表示了每个麦穗的分数。
输出
surfacedust需要走多久才能找到他心中的那个麦穗,如果他找不到,那就输出“NONE”,详见样例。
样例输入
68
3
66 68 98
98
6
100 78 99 100 69 87
样例输出
2
1
代码如下
#include <iostream>
#include <cstdio>
using namespace std;
int main(){
int bz,n,m;
while(scanf("%d",&bz)!=EOF){
cin>>n;
int a=1;
for(int i=0;i<n;i++){
cin>>m;
if(m>=bz&&a) {
cout<<i+1<<endl;
a=0;
}
}
if(a==1) cout<<"NONE"<<endl;
}
}
坎坷
while中scanf("%d",&bz)!=0会导致OJ输出超限= =
顺带提一句:
scanf函数返回值为成功读取的变量数量,如果读取出错会返回EOF(-1)