class Solution {
public:
int singleNumber(int A[], int n) {
// Note: The Solution object is instantiated only once and is reused by each test case.
int ans = 0;
bool flag = true;
if(n==0)
return ans;
if(A[0]<0){
A[0] = -A[0];
flag = !flag;
}
ans = A[0];
for(int i=1;i<n;i++){
if(A[i]<0){
A[i] = -A[i];
flag = !flag;
}
ans = ans^A[i];
}
if(flag==false)
ans = -ans;
return ans;
}
};
public:
int singleNumber(int A[], int n) {
// Note: The Solution object is instantiated only once and is reused by each test case.
int ans = 0;
bool flag = true;
if(n==0)
return ans;
if(A[0]<0){
A[0] = -A[0];
flag = !flag;
}
ans = A[0];
for(int i=1;i<n;i++){
if(A[i]<0){
A[i] = -A[i];
flag = !flag;
}
ans = ans^A[i];
}
if(flag==false)
ans = -ans;
return ans;
}
};