您的位置:首页 > 产品设计 > UI/UE

1041. Be Unique (20)

2017-01-30 23:27 309 查看

1. 原题: https://www.patest.cn/contests/pat-a-practise/1041

2. 思路:

题意:

给出N个数字,求出只出现一次的第一个数字。

思路:

基础的逻辑题,比较简单。

用map,存储出现次数,同时把数字压入vector。

然后遍历vector,输出第一个出现一次的数字。

3. 源码(已AC):

#include<iostream>
#include<map>
#include<vector>
using namespace std;

int main(void)
{
freopen("in.txt", "r", stdin);
int N;
cin >> N;
vector<int> nv(N);
map<int, int> nmp;

for (int i = 0; i < N; i++)//读入数据
{
cin >> nv[i];
if (nmp.count(nv[i]) == 0)
nmp[nv[i]] = 0;
nmp[nv[i]]++;
}

for (int i = 0; i < N; i++)//遍历vector
{
if (nmp[nv[i]] == 1)
{
cout << nv[i] << endl;
return 0;
}
}
cout << "None\n";

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  PAT 甲级 数据处理