#include <bits/stdc++.h>
#include "Alice.h"
using namespace std;
vector<int> v[125], g[5005];
vector<pair<int, int>> Alice() {
long long int x = setN(4801);
int n = 4801;
for (int i = 0; i < 120; i++) v[i].clear();
for (int i = 1; i <= n; i++) g[i].clear();
for (int i = 2; i <= n; i++) {
v[i % 120].push_back(i);
}
for (int i = 0; i < 60; i++) {
if (x & (1ll << i)) {
for (int j = 0; j < v[i].size(); j++) {
g[v[i][j]].push_back(v[i + 60][j]);
g[1].push_back(v[i][j]);
}
}
else {
for (int j = 1; j < v[i].size(); j++) {
g[v[i][j - 1]].push_back(v[i][j]);
g[v[i + 60][j - 1]].push_back(v[i + 60][j]);
}
g[1].push_back(v[i][0]);
g[1].push_back(v[i + 60][0]);
}
}
vector<pair<int, int>> v;
for (int i = 1; i <= n; i++) {
for (int w : g[i]) {
v.push_back({i, w});
}
}
unsigned seed = std::chrono::system_clock::now().time_since_epoch().count();
shuffle(v.begin(), v.end(), std::default_random_engine(seed));
return v;
}
#include <bits/stdc++.h>
#include "Bob.h"
using namespace std;
long long int Bob(vector<pair<int, int>> v) {
long long int res = 0;
for (auto w : v) {
if (w.first == 1) continue;
if (w.first % 120 != w.second % 120) {
res |= (1ll << (w.first % 60));
}
}
return res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |