题目:
给定 n 个自然数,求没有在这 n 个自然数中出现过的最小的自然数是多少。
注意,0 也是自然数。
输入格式:
第一行输入一个正整数 n。
第二行输入给定的 n 个自然数,相邻两个自然数之间用一个空格隔开。
输出格式:
输出只有一行,一个自然数,表示没有在输入的 n 个自然数中出现过的最小的自然数。
数据范围:
1≤n≤1000,
输入的 n 个自然数都不大于 1000。
输入样例1:
7
2 1000 7 0 1 2 5
输出样例1:
3
输入样例2:
5
1 2 3 4 5
输出样例2:
0
样例解释:
样例 1 中,输入的自然数中,0、1、2 出现了,3 没有出现,所以答案是 3。
样例 2 中,输入的自然数中,0 没有出现,所以答案是 0。
分析:
这道题真的不难,但是我还是卡了半天,一检查原来n没有输出,气死我也,哈哈哈1!
源码:
#include <iostream>
include
include
using namespace std;
int arr[1001]={};
int main()
{
int n; cin>>n; //就是这一步,忘记写了(苦笑) for(int i=0;i<n;i++) { int a; cin >> a; arr[a]=-1; } for(int i=0;i<1001;i++) { if(arr[i]==0) { cout << i<<endl; break; } } return 0;
}