题目描述

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,104]. 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 (≤105) 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

代码实现

本题比较简单,hash后遍历即可(注意一下需要“首先”满足条件的数)

AC代码

  1. #include <iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int number[10001] = {0}, N;
  6. cin >> N;
  7. int bets[N];
  8. for (int i = 0; i < N; i++)
  9. {
  10. cin >> bets[i];
  11. number[bets[i]]++;
  12. }
  13. for (int i = 0; i < N; i++)
  14. {
  15. if (number[bets[i]] == 1)
  16. {
  17. cout << bets[i] << endl;
  18. return 0;
  19. }
  20. }
  21. cout << "None" << endl;
  22. return 0;
  23. }