第一个缺失正数
序号:#7 难度:有挑战 时间限制:1000ms 内存限制:10M
描述
给出一个无序的数列,找出其中缺失的第一个正数,要求复杂度为 O(n) 如:[1,2,0],第一个缺失为3。 如:[3,4,-1,1],第一个缺失为2。
输入
1,2,0
输出
3
输入样例
1,2,0
3,4,-1,1
-1,-3,-5
1,2,3
-1,-10,0
输出样例
3
2
1
4
1
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
long long int a[100]={0},i=0,x,j;
char t;
cin>>x;
if(x>=1)
{
a[x]=1;
i++;
}
while(cin>>t)
{
cin>>x;
if(x>=1)
{
a[x]=1;
i++;
}
}
for(j=1;j<=i+2;j++)
{
if(a[j]==0)
{
cout<<j<<endl;
break;
}
}
return 0;
}