제출 #1314137

#제출 시각아이디문제언어결과실행 시간메모리
1314137andrei_nXOR Sum (info1cup17_xorsum)C++20
45 / 100
1694 ms4248 KiB
#include <bits/stdc++.h> using namespace std; int n; int v[1000005]; int main() { ios::sync_with_stdio(false); cin.tie(0); cin>>n; for(int i=1; i<=n; ++i) { cin>>v[i]; } int ans = 0; for(int bit = 29; bit >= 0; --bit) { int cnt = 0; for(int i=1; i<=n; ++i) { v[i] &= (1<<bit+1) - 1; } sort(v+1, v+n+1); for(int i=1; i<=n; ++i) { //v[j] + v[i] >= (1<<bit) && v[j] + v[i] < (1<<bit+1) || //v[j] + v[i] >= (1<<bit) + (1<<bit+1) int p1 = lower_bound(v+1, v+i+1, (1<<bit) - v[i]) - v; int p2 = lower_bound(v+1, v+i+1, (1<<bit+1) - v[i]) - v; int p3 = lower_bound(v+1, v+i+1, (1<<bit) + (1<<bit+1) - v[i]) - v; cnt += p2 - p1 + i - p3 + 1; } if(cnt & 1) { ans |= (1<<bit); } } cout<<ans; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...