| 10540 | 2024-04-04 18:45:13 | CWM | Xorzótábla | cpp17 | Time limit exceeded 0/100 | 2.099s | 6672 KiB |
#include <iostream>
#include <vector>
#include <set>
#include <queue>
#include <algorithm>
#include <climits>
using namespace std;
long long cMod = 2;
int bitlookahead = 1;
bool comp(int a, int b) {
a = a % cMod;
b = b % cMod;
return b > a;
}
signed main()
{
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];
}
int res = 0;
while (cMod<4e9)
{
sort(a.begin(), a.end(), comp);
sort(b.begin(), b.end(), comp);
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;
}
int lLim = cMod / 2;
int uLim = cMod;
int 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 cDif = uIdx - lIdx;
ans += cDif;
}
if (ans % 2 == 1) {
res += cMod;
}
cMod *= 2;
bitlookahead++;
}
cout << res/2;
return 0;
}
| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 3ms | 1808 KiB | ||||
| 2 | Time limit exceeded | 2.099s | 2772 KiB | ||||
| subtask2 | 0/14 | ||||||
| 3 | Wrong answer | 3ms | 2292 KiB | ||||
| 4 | Wrong answer | 14ms | 2540 KiB | ||||
| 5 | Wrong answer | 14ms | 2700 KiB | ||||
| 6 | Wrong answer | 8ms | 2908 KiB | ||||
| 7 | Wrong answer | 21ms | 3160 KiB | ||||
| 8 | Wrong answer | 21ms | 3324 KiB | ||||
| 9 | Wrong answer | 28ms | 3536 KiB | ||||
| subtask3 | 0/14 | ||||||
| 10 | Wrong answer | 4ms | 3716 KiB | ||||
| 11 | Time limit exceeded | 2.099s | 4592 KiB | ||||
| 12 | Time limit exceeded | 2.069s | 4524 KiB | ||||
| 13 | Time limit exceeded | 2.059s | 4820 KiB | ||||
| 14 | Time limit exceeded | 2.046s | 5184 KiB | ||||
| subtask4 | 0/14 | ||||||
| 15 | Time limit exceeded | 2.065s | 4864 KiB | ||||
| 16 | Time limit exceeded | 2.055s | 4968 KiB | ||||
| 17 | Time limit exceeded | 2.073s | 5048 KiB | ||||
| 18 | Time limit exceeded | 2.051s | 5308 KiB | ||||
| 19 | Time limit exceeded | 2.013s | 5468 KiB | ||||
| subtask5 | 0/21 | ||||||
| 20 | Wrong answer | 497ms | 5272 KiB | ||||
| 21 | Wrong answer | 1.794s | 6672 KiB | ||||
| 22 | Time limit exceeded | 2.059s | 5308 KiB | ||||
| 23 | Time limit exceeded | 2.069s | 5856 KiB | ||||
| 24 | Time limit exceeded | 2.078s | 5956 KiB | ||||
| 25 | Time limit exceeded | 2.078s | 6000 KiB | ||||
| subtask6 | 0/37 | ||||||
| 26 | Wrong answer | 259ms | 5212 KiB | ||||
| 27 | Time limit exceeded | 2.058s | 5200 KiB | ||||
| 28 | Time limit exceeded | 2.075s | 5384 KiB | ||||
| 29 | Time limit exceeded | 2.053s | 5492 KiB | ||||
| 30 | Time limit exceeded | 2.049s | 6072 KiB | ||||
| 31 | Time limit exceeded | 2.066s | 6016 KiB | ||||
| 32 | Time limit exceeded | 2.033s | 6024 KiB | ||||
| 33 | Time limit exceeded | 2.078s | 6096 KiB | ||||
| 34 | Time limit exceeded | 2.073s | 6060 KiB | ||||