甲级| 1041.Be Unique

题目描述

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.

输入描述

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.

输出描述

For each test case, print the winning number in a line. If there is no winner, print None instead.

输入例子1

7 5 31 5 88 67 88 17

输出例子1

31

输入例子2

5 888 666 666 888 888

输出例子2

None

我的代码

#include<stdio.h>
#include<iostream>
using namespace std;
int main(){
    int n,num[100000];
    int max=0;
    int hashTable[100000]={0};
    bool flag=false;  //判断是否找到 
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>num[i];  //输入第i个人的bet的数 
        if(num[i]>max){
            max=num[i];
        }
        hashTable[num[i]]++;
    }
    
    for(int i=0;i<n;i++){
        int j=num[i];  //按次序得到bet的数字 
        if(hashTable[j]==1){
            cout<<num[i];
            flag=true;
            break;
        }
    }
    if(flag==false){
        cout<<"None";
    }
    return 0;   
} 
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容