PAT (Advanced Level) Practice 1041 Be Unique (20 分) 凌宸1642

题目描述:

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.

译:对于火星人来说,成为唯一是很重要的,甚至他们的彩票也是以独特的方式设计的。获胜的规则很简单,对从 区间[1 , 10 4 ] 中选择的一个数字下注。第一个在唯一号码上下注的人就赢了。例如,如果有7个人对{5 31 5 88 67 88 17} 下注,那么第二个下注 31 的人赢。


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.

译:每个输入文件包含一个测试用例,每个用例在一行中包含一个正整数 N (≤10 5 ) , 紧跟着 N 个赌注。所有的数字被一个空格分隔。


Output Specification (输出说明):

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

译:对于每个测试用例,在一个行中输出获胜的数字。如果没有获胜者,则输出 None


Sample Input 1 (样例输入1):

7 5 31 5 88 67 88 17

Sample Output 1 (样例输出1):

31

Sample Input 2 (样例输入2):

5 888 666 666 888 888

Sample Output 2 (样例输出2):

None

The Idea:

签到题,真的是签到的水题。直接用 map 存储每个数字出现的顺序,然后再遍历数字,判断第一个只出现一次的数字,就是 winner 。 遍历完整个序列之后,如果没有找到只出现一次的数字,则输出 None


The Codes:

#include<bits/stdc++.h>
using namespace std;
int num[100010] , n ;
map<int , int > mp ;
int main(){
cin >> n ;
for(int i = 0 ; i < n ; i ++){
cin >> num[i] ;
mp[num[i]] ++ ; // 该数字出现的顺序加 1
}
for(int i = 0 ; i < n ; i ++){
if(mp[num[i]] == 1){
cout << num[i] << endl ;
break;
}
if(i == n - 1) cout << "None" << endl ;
}
return 0 ;
}

PAT (Advanced Level) Practice 1041 Be Unique (20 分) 凌宸1642的更多相关文章

  1. PAT (Advanced Level) Practice 1046 Shortest Distance (20 分) 凌宸1642

    PAT (Advanced Level) Practice 1046 Shortest Distance (20 分) 凌宸1642 题目描述: The task is really simple: ...

  2. PAT (Advanced Level) Practice 1042 Shuffling Machine (20 分) 凌宸1642

    PAT (Advanced Level) Practice 1042 Shuffling Machine (20 分) 凌宸1642 题目描述: Shuffling is a procedure us ...

  3. PAT (Advanced Level) Practice 1015 Reversible Primes (20 分) 凌宸1642

    PAT (Advanced Level) Practice 1015 Reversible Primes (20 分) 凌宸1642 题目描述: A reversible prime in any n ...

  4. PAT (Advanced Level) Practice 1152 Google Recruitment (20 分)

    In July 2004, Google posted on a giant billboard along Highway 101 in Silicon Valley (shown in the p ...

  5. PAT (Advanced Level) Practice 1120 Friend Numbers (20 分) (set)

    Two integers are called "friend numbers" if they share the same sum of their digits, and t ...

  6. PAT (Advanced Level) Practice 1015 Reversible Primes (20 分)

    A reversible prime in any number system is a prime whose "reverse" in that number system i ...

  7. PAT (Advanced Level) Practice 1035 Password (20 分) 凌宸1642

    PAT (Advanced Level) Practice 1035 Password (20 分) 凌宸1642 题目描述: To prepare for PAT, the judge someti ...

  8. PAT (Advanced Level) Practice 1031 Hello World for U (20 分) 凌宸1642

    PAT (Advanced Level) Practice 1031 Hello World for U (20 分) 凌宸1642 题目描述: Given any string of N (≥5) ...

  9. PAT (Advanced Level) Practice 1027 Colors in Mars (20 分) 凌宸1642

    PAT (Advanced Level) Practice 1027 Colors in Mars (20 分) 凌宸1642 题目描述: People in Mars represent the c ...

随机推荐

  1. node.js 中间件

    node.js 中间件 node.js middleware Express middleware body-parser cookie-parser cookie-session cors csur ...

  2. js 裁剪图片

    js 裁剪图片 https://gugeji.com/search?q=js剪切图片

  3. redis和mysql结合数据一致性方案

    缓存读: 缓存由于高并发高性能,已经被广泛的应用.在读取缓存方面做法一致.流程如下: 写缓存: 1.先更新数据库,再更新缓存 2.先更新数据库,再删除缓存. (1).先更新数据库,再更新缓存 这套方案 ...

  4. pytorch中修改后的模型如何加载预训练模型

    问题描述 简单来说,比如你要加载一个vgg16模型,但是你自己需要的网络结构并不是原本的vgg16网络,可能你删掉某些层,可能你改掉某些层,这时你去加载预训练模型,就会报错,错误原因就是你的模型和原本 ...

  5. Spring中的@Enable注解

    本文转载自SpringBoot中神奇的@Enable注解? 导语 在SpringBoot开发过程,我们经常会遇到@Enable开始的好多注解,比如@EnableEurekaServer.@Enable ...

  6. Autocad中使用命令来调用python对Autocad二次开发打包后的exe程序

    在Autocad中直接调用Python二次开发程序是有必要的,下面介绍一种方法来实现这个功能: 其基本思路是:先将二次开发的程序打包为可执行程序exe,然后编写lsp文件,该文件写入调用exe程序的语 ...

  7. 第30天学习打卡(异常概述 IO流概述)

    异常概述 即非正常情况,通俗的说,异常就是程序出现的错误 异常的分类(Throwable) 异常(Exception) 合理的应用程序可能需要捕获的问题 举例:NullPointerException ...

  8. Linux就该这样学--之常用linux命令及bash基础

    Linux就该这样学--之常用linux命令及bash基础 Linux命令 管道 重定向 环境变量 常用命令 常用系统工作命令 系统状态检测命令 工作目录切换命令 文本文件编辑命令 文件目录管理命令 ...

  9. Python3.x 基础练习题100例(61-70)

    练习61: 题目: 打印出杨辉三角形. 程序: if __name__ == '__main__': a = [] for i in range(10): a.append([]) for j in ...

  10. 【转载】Android异步消息处理机制详解及源码分析

    PS一句:最终还是选择CSDN来整理发表这几年的知识点,该文章平行迁移到CSDN.因为CSDN也支持MarkDown语法了,牛逼啊! [工匠若水 http://blog.csdn.net/yanbob ...