https://ac.nowcoder.com/acm/contest/329/C
题解:
std
题目已经保证了输入顺序,只需要判断读入的数是否比上一个数大1即可。如果都满足,就是最后一个数没有出现。
BONUS:这题如果不给学生人数,不顺序读入怎么做呢?
时间复杂度:𝑂(𝑁)
#include <bits/stdc++.h>
using namespace std;
int main()
{
int maxx=0,x=0,t;
int n;
scanf("%d",&n);
while (scanf("%d",&t)==1)
{
x^=t;
maxx=max(maxx,t);
}
for (int i=1;i<=maxx;i++)
x^=i;
if (x==0) x=maxx+1;
printf("%d\n",x);
return 0;
}