Submission #1146505

#TimeUsernameProblemLanguageResultExecution timeMemory
1146505aliarapovXOR Sum (info1cup17_xorsum)C++20
0 / 100
88 ms196608 KiB
#include <iostream> 
#include <vector>
#include <bitset>
#include <algorithm>

signed main() {
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(nullptr);std::cout.tie(nullptr);

    int n;
    std::cin >> n;
    std::vector<int> a(n);
    for (int &i : a) std::cin >> i;
    std::sort(a.begin(), a.end());
    const int N = 1e9 + 1;
    std::bitset<N> bt;
    for (int i = 0; i < n; i++) bt[a[i]] = !bt[a[i]];
    std::bitset<N> ans;
    int last = 0;
    for (int i = 0; i < n; i++) {
        bt <<= (a[i] - last);
        ans ^= bt;
        last = a[i];
        bt[a[i] * 2] = !bt[a[i] * 2];
    }
    int res = 0;
    for (int i = 0; i < N; i++) {
        if (ans[i]) res ^= i;
    }
    std::cout << res;
}
#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...