class Solution {
public:
int singleNumber(int A[], int n) {
// Note: The Solution object is instantiated only once and is reused by each test case.
unordered_map<int, int> map;
for (int i=0; i<n; i++) {
if (map.find(A[i])==map.end()) {
map[A[i]]=1;
}else{
map[A[i]]=0;
}
}
for (int i=0; i<n; i++) {
if (map[A[i]]==1) {
return A[i];
}
}
return -1;
}
};
II
class Solution {
public:
int singleNumber(int A[], int n) {
// Note: The Solution object is instantiated only once and is reused by each test case.
unordered_map<int, int> map;
for (int i=0; i<n; i++) {
if (map.find(A[i])==map.end()) {
map[A[i]]++;
}else{
map[A[i]]--;
}
}
for (int i=0; i<n; i++) {
if (map[A[i]]==1) {
return A[i];
}
}
return -1;
}
};