题目链接->link
题意描述
输入n个数字,数字范围1~104,要求输出第一个不重复出现的数字。
思路
- int hashmap[10001]存储所有数字出现的次数,因为要输出第一个不重复出现的,所以用id[]作为hashmap[]的下标,遍历hashmap[id[i]],出现第一个值为1的就输出。
代码
#include <stdio.h>
#include <math.h>
#include <string.h>
#include <iostream>
using namespace std;
const int maxn=10001;
int hashmap[maxn]={0};//存储每只队伍的总分
int main(){
int n;
scanf("%d",&n);
int i,id[n];
for(i=0;i<n;i++){
scanf("%d",&id[i]);
hashmap[id[i]]++;
}
int flag=-1;//第一个首次出现的值
for(i=0;i<n;i++){
if(hashmap[id[i]]==1){
flag=id[i];
printf("%d",flag);
break;
}
}
if(flag==-1)printf("None");
printf("\n");
return 0;
}