PAT Advanced 1144 The Missing Number (20分)
Posted littlepage
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PAT Advanced 1144 The Missing Number (20分)相关的知识,希望对你有一定的参考价值。
Given N integers, you are supposed to find the smallest positive integer that is NOT in the given list.
Input Specification:
Each input file contains one test case. For each case, the first line gives a positive integer N (≤). Then N integers are given in the next line, separated by spaces. All the numbers are in the range of int.
Output Specification:
Print in a line the smallest positive integer that is missing from the input list.
Sample Input:
10
5 -25 9 6 1 3 4 2 5 17
Sample Output:
7
这道题考察了哈希映射。映射到哈希表中,之后进行从1开始判断,输出最小不存在的数字。
#include <iostream> #include <map> using namespace std; int main(){ int N, tmp; map<int, bool> m; cin >> N; while(N--){ cin >> tmp; m[tmp] = true; } int i = 1; while(m[i]) i++; cout << i; return 0; }
以上是关于PAT Advanced 1144 The Missing Number (20分)的主要内容,如果未能解决你的问题,请参考以下文章
PAT 甲级 1144 The Missing Number
PAT Advanced 1054 The Dominant Color (20分)
PAT (Advanced Level) 1038. Recover the Smallest Number (30)
PAT Advanced 1012 The Best Rank (25分)