105552024-04-05 13:09:37CWMXorzótáblacpp17Elfogadva 100/100996ms7164 KiB
#include <iostream>
#include <vector>
#include <set>
#include <queue>
#include <algorithm>
#include <climits>

using namespace std;
long long cMod = 2;

signed main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int sA, sB;
    cin >> sA >> sB;
    vector<int> a(sA);
    vector<int> b(sB);
    for (size_t i = 0; i < sA; i++)
    {
        cin >> a[i];
    }
    for (size_t i = 0; i < sB; i++)
    {
        cin >> b[i];
    }
    long long res = 0;
    while (cMod<4e9)
    {
        vector<int> aTemp(sA);
        vector<int> bTemp(sB);
        for (size_t i = 0; i < sA; i++)
        {
            aTemp[i] = a[i] % cMod;
        }
        for (size_t i = 0; i < sB; i++)
        {
            bTemp[i] = b[i] % cMod;
        }
        sort(aTemp.begin(), aTemp.end());
        sort(bTemp.begin(), bTemp.end());
        long long lLim = cMod / 2;
        long long uLim = cMod;
        long long ans = 0;
        for (size_t i = 0; i < aTemp.size(); i++)
        {
            int lIdx = lower_bound(bTemp.begin(), bTemp.end(), lLim - aTemp[i]) - bTemp.begin();
            int uIdx = lower_bound(bTemp.begin(), bTemp.end(), uLim - aTemp[i]) - bTemp.begin();
            int ulIdx = lower_bound(bTemp.begin(), bTemp.end(), uLim+lLim - aTemp[i]) - bTemp.begin();
            int cDif = uIdx - lIdx + bTemp.size()-ulIdx;
            ans += cDif;
        }
        if (ans % 2 == 1) {
            res += cMod;
        }
        cMod *= 2;
    }
    cout << res/2;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1696 KiB
2Elfogadva833ms4680 KiB
subtask214/14
3Elfogadva3ms1944 KiB
4Elfogadva4ms2188 KiB
5Elfogadva4ms2300 KiB
6Elfogadva4ms2512 KiB
7Elfogadva8ms2600 KiB
8Elfogadva8ms2732 KiB
9Elfogadva10ms2932 KiB
subtask314/14
10Elfogadva3ms3004 KiB
11Elfogadva902ms6300 KiB
12Elfogadva896ms6052 KiB
13Elfogadva996ms6504 KiB
14Elfogadva996ms6540 KiB
subtask414/14
15Elfogadva467ms5824 KiB
16Elfogadva633ms6288 KiB
17Elfogadva648ms6272 KiB
18Elfogadva721ms6508 KiB
19Elfogadva721ms6764 KiB
subtask521/21
20Elfogadva101ms4696 KiB
21Elfogadva354ms6000 KiB
22Elfogadva535ms6344 KiB
23Elfogadva607ms6828 KiB
24Elfogadva649ms6792 KiB
25Elfogadva446ms6776 KiB
subtask637/37
26Elfogadva71ms4024 KiB
27Elfogadva451ms5492 KiB
28Elfogadva787ms6096 KiB
29Elfogadva700ms6188 KiB
30Elfogadva996ms7164 KiB
31Elfogadva995ms7116 KiB
32Elfogadva455ms7060 KiB
33Elfogadva987ms6992 KiB
34Elfogadva989ms7048 KiB