#pragma GCC optimize("Ofast,unroll-loops,fast-math")
#include<bits/stdc++.h>
using namespace std;
typedef long long ll ;
#define pll pair<ll , ll >
#define all(x) (x).begin(),(x).end()
#define sz(x) (ll)(x).size()
#define X first
#define Y second
#define mp make_pair
#define pii pair<int , int>
#define vec vector
#define file_io freopen("input.txt", "r", stdin);freopen("output.txt", "w", stdout);
#define migmig ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
#define pb push_back
ll poww(ll a, ll b, ll md) {
return (!b ? 1 : (b & 1 ? a * poww(a * a % md, b / 2, md) % md : poww(a * a % md, b / 2, md) % md));
}
const int maxn = 1000*100+5 ;
const int maxm = 4e3 + 5 ;
const ll inf = 9223372036854775807 ;
const ll mod = 1e9 + 7 ;
int n , v[maxn] , ans , a[maxn];
int main()
{
migmig ;
cin>>n ;
for(int i =1 ; i <= n ; i ++ ){
cin>>v[i] ;
}
if(n < maxn){
for(int i = 1 ; i <= n ; i ++ ){
for(int j = i ; j <= n ; j++ ){
ans = ans ^ (v[i] + v[j]) ;
}
}
cout<<ans ;
return 0 ;
}
for(int i = 1 ; i <= n; i ++ ) a[v[i]] ++ ;
for(int i = 1 ; i < maxm ; i ++ ){
for(int j = 1 ; j < i ; j ++ ){
ans = ans ^ ( ( (a[i] * a[j] ) & 1 ) * (i + j) ) ;
//if(( ( (a[i] * a[j] ) & 1 ) * (i + j) )) cout<<( ( (a[i] * a[j] ) & 1 ) * (i + j) ) << endl ;
}
ans = ans ^ ( ( (a[i] * (a[i] + 1) / 2) & 1 ) * 2 * i ) ;
}
cout<<ans ;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
384 KB |
Output is correct |
2 |
Correct |
2 ms |
364 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
9 ms |
748 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
9 ms |
748 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
384 KB |
Output is correct |
2 |
Correct |
2 ms |
364 KB |
Output is correct |
3 |
Correct |
555 ms |
792 KB |
Output is correct |
4 |
Correct |
551 ms |
792 KB |
Output is correct |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Correct |
2 ms |
384 KB |
Output is correct |
2 |
Correct |
2 ms |
364 KB |
Output is correct |
3 |
Incorrect |
9 ms |
748 KB |
Output isn't correct |
4 |
Halted |
0 ms |
0 KB |
- |