10555 | 2024-04-05 13:09:37 | CWM | Xorzótábla | cpp17 | Elfogadva 100/100 | 996ms | 7164 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 | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 3ms | 1696 KiB | ||||
2 | Elfogadva | 833ms | 4680 KiB | ||||
subtask2 | 14/14 | ||||||
3 | Elfogadva | 3ms | 1944 KiB | ||||
4 | Elfogadva | 4ms | 2188 KiB | ||||
5 | Elfogadva | 4ms | 2300 KiB | ||||
6 | Elfogadva | 4ms | 2512 KiB | ||||
7 | Elfogadva | 8ms | 2600 KiB | ||||
8 | Elfogadva | 8ms | 2732 KiB | ||||
9 | Elfogadva | 10ms | 2932 KiB | ||||
subtask3 | 14/14 | ||||||
10 | Elfogadva | 3ms | 3004 KiB | ||||
11 | Elfogadva | 902ms | 6300 KiB | ||||
12 | Elfogadva | 896ms | 6052 KiB | ||||
13 | Elfogadva | 996ms | 6504 KiB | ||||
14 | Elfogadva | 996ms | 6540 KiB | ||||
subtask4 | 14/14 | ||||||
15 | Elfogadva | 467ms | 5824 KiB | ||||
16 | Elfogadva | 633ms | 6288 KiB | ||||
17 | Elfogadva | 648ms | 6272 KiB | ||||
18 | Elfogadva | 721ms | 6508 KiB | ||||
19 | Elfogadva | 721ms | 6764 KiB | ||||
subtask5 | 21/21 | ||||||
20 | Elfogadva | 101ms | 4696 KiB | ||||
21 | Elfogadva | 354ms | 6000 KiB | ||||
22 | Elfogadva | 535ms | 6344 KiB | ||||
23 | Elfogadva | 607ms | 6828 KiB | ||||
24 | Elfogadva | 649ms | 6792 KiB | ||||
25 | Elfogadva | 446ms | 6776 KiB | ||||
subtask6 | 37/37 | ||||||
26 | Elfogadva | 71ms | 4024 KiB | ||||
27 | Elfogadva | 451ms | 5492 KiB | ||||
28 | Elfogadva | 787ms | 6096 KiB | ||||
29 | Elfogadva | 700ms | 6188 KiB | ||||
30 | Elfogadva | 996ms | 7164 KiB | ||||
31 | Elfogadva | 995ms | 7116 KiB | ||||
32 | Elfogadva | 455ms | 7060 KiB | ||||
33 | Elfogadva | 987ms | 6992 KiB | ||||
34 | Elfogadva | 989ms | 7048 KiB |