悲情的一题。。
比赛的时候把题意理解错了,贡献了好几次wr。。。后来明白题意的时候,真觉得自己英语太挫了。少年,要努力过四级。
说下题意: 这个故事是说大家报数,让你找出是谁报数的时候报错了。
报数时候序列是上升的,且相差为1。有关键的一点是,若报数时的序列是完全正确的,那么报错的人是第一个。。。这么说来确实有点说不过去,但是题目上说了必然有一个人报错,那只能是第一个了~~
实现看代码:
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
const int vMaxsize = 200100;
int main()
{
int arry[vMaxsize];
int ncase;
scanf("%d",&ncase);
int k = 0;
while(ncase--)
{
bool flag = false;
memset(arry,0,sizeof(arry));
int n;
scanf("%d",&n);
for(int i = 0 ; i < n ; i++)
{
scanf("%d",&arry[i]);
}
printf("Case #%d: ",++k);
for(int i = 1 ; i < n ; i++)
{
if(arry[i] - arry[i-1] != 1)
{
printf("%d\n",i+1);
flag = true;
break;
}
}
if(!flag)
{
printf("1\n");
}
}
return 0;
}