Being unique is so important to people on Mars that even their lottery is designed
in a unique way. The rule of winning is simple: one bets on a number chosen from
[1,10^4]. The first one who bets on a unique number wins. For example, if there
are 7 people betting on { 5 31 5 88 67 88 17 }, then the second one who bets on
31 wins.
Input Specification:
Each input file contains one test case. Each case contains a line which begins
with a positive integer N (≤10^5) and then followed by N bets. The numbers are
separated by a space.
Output Specification:
For each test case, print the winning number in a line. If there is no winner,
print None instead.
Sample Input 1:
7 5 31 5 88 67 88 17
Sample Output 1:
31
Sample Input 2:
5 888 666 666 888 888
Sample Output 2:
None
每次重头开始比较是否相同会超时,直接用个大的数组num[100000]来统计重复次数就可以。
#include <iostream>
using namespace std;
int main()
{
int N;
cin >> N;
int num[100000]={0};
int n[N];
for (int i=0;i<N;i++)
{
cin >> n[i];//输入的数
num[n[i]]++;//该数重复的次数
}
int flag=0;
for (int i=0;i<N;i++)
{
if(num[n[i]]==1) {flag=1;cout << n[i];break;}
}
if(flag==0) cout << "None";
return 0;
}