对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。
输入格式:
输入在一行中给出不知道多少个绝对值不超过1000的整数,其中保证至少存在一个“250”。
输出格式:
在一行中输出第一次出现的“250”是对方扔过来的第几个数字(计数从1开始)。题目保证输出的数字在整型范围内。
输入样例:
888 666 123 -233 250 13 250 -222
输出样例:
5
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <bits/stdc++.h>
#include <string>
using namespace std;
//思路:读入字符串,用空格来确定一个整数的开始与结束,然后判断是否为250
//本题错点未能考虑到当250在最后一个位置时,仅用空格判断
//是不能得到这最后一个整数进行判断是否为250
//打印字符串方法:一个一个遍历,和直接打印
// for (int j = 0; j < name2.size(); j++) {
// printf("%c", name2[j]);
// }
// printf("%s", name2.c_str());
//遍历字符串的每个字符可以使用str[i]进行遍历
//scanf可以读取空格,使用getline(cin,string)读入n行string需要n+1次循环
int main() {
string str;
getline(cin, str);
int fir = 0, en = 0;
int ans = 0;
string temp;
for (int i = 0; i < str.size(); i++) {
temp += str[i];
if (str[i] == ' ' || i == str.size() - 1) {
ans++;
if (temp == "250 " || temp == "250") {
printf("%d", ans);
break;
}
temp = "";
}
}
return 0;
}