• PAT1041: Be Unique


    1041. Be Unique (20)

    时间限制
    100 ms
    内存限制
    65536 kB
    代码长度限制
    16000 B
    判题程序
    Standard
    作者
    CHEN, Yue

    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.

    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

    思路
    1084差不多的思路,队列q记录顺序,字典dic记录是否重复出现。遍历q的时候查下字典,输出第一个满足"仅出现一次"的数字即可。
    代码
    #include<iostream>
    #include<map>
    #include<iterator>
    #include<queue>
    using namespace std;
    int main()
    {
       int N;
       while(cin >> N)
       {
           map<int,int> dic;
           queue<int> q;
           for(int i = 0;i < N;i++)
           {
               int value;
               cin >> value;
               if(dic.count(value) > 0)
                 dic[value] = -1;
               else
               {
                  q.push(value);
                  dic.insert(pair<int,int>(value,1));
               }
           }
    
           bool check = false;
           while(!q.empty())
           {
               if(dic[q.front()] > 0)
               {
                 check = true;
                 cout << q.front();
                 break;
               }
               q.pop();
           }
           if(!check)
             cout << "None" << endl;
       }
    }
    
    
    
     
  • 相关阅读:
    MySql数据类型
    mysql中char,varchar,text区别
    php错误提示:date_default_timezone_get
    才储分析
    js 阻止后续事件
    大型高性能网站的十项规则
    为rand函数加入随机数种子
    php-通过共享内存实现消息队列和进程通信
    PHP比较有用的常量
    json处理内容中多双引号的情况
  • 原文地址:https://www.cnblogs.com/0kk470/p/7629444.html
Copyright © 2020-2023  润新知