vector p[10005],输入值作为下标,保存输入顺序。再从1-10000进行遍历,找出只出现过一次的数值,并比较输入顺序,最后保留输入顺序最小的值。
#include<bits/stdc++.h>
#define lowbit(x) ((x)&(-(x)))
#define ll long long
#define INF 0x3f3f3f3f
#define N 100000
#define CLR(a) memset(a, 0, sizeof(a))
using namespace std
;
int n
,tmp
;
vector
<int> p
[10005];
int main() {
int ans
=INF
;
int loc
;
cin
>>n
;
for(int i
=0;i
<n
;i
++){
cin
>>tmp
;
p
[tmp
].push_back(i
);
}
for(int i
=1;i
<=10000;i
++){
if(p
[i
].size()==1){
if(p
[i
][0]<ans
){
ans
=p
[i
][0];
loc
=i
;
}
}
}
if(ans
!=INF
){
cout
<<loc
<<endl
;
}
else{
cout
<<"None"<<endl
;
}
return 0;
}
转载请注明原文地址: https://win8.8miu.com/read-1497940.html