本题链接:1144 The Missing Number - PAT (Advanced Level) Practice (pintia.cn)
题意:
找到最小的正数,该正数不在给定的数字列里
这题和柳神思路一样~我也用到了map,不过我的是int,bool型
代码:
#include<iostream>
#include<map>
using namespace std;
int main() {
int n;
cin >> n;
map<int,bool> hash;
for (int i = 0; i < n; i++) {
int a;
cin >> a;
hash[a] = true;
}
for (int i = 1; i < 100000010; i++) {
if (hash.find(i) == hash.end()) {
cout << i;
break;
}
}
return 0;
}