Submission #770532

#TimeUsernameProblemLanguageResultExecution timeMemory
770532rxlfd314Xoractive (IZhO19_xoractive)C++17
100 / 100
4 ms464 KiB
#include "interactive.h" #include <bits/stdc++.h> using namespace std; vector<int> guess(int N) { vector<int> ans(N); ans[0] = ask(1); map<int, int> inds; for (int j = 0; (1 << j) <= N; j++) { vector<int> v; for (int i = 1; i < N; i++) { if (i & 1 << j) { v.push_back(i+1); } } if (!v.size()) continue; vector<int> a = get_pairwise_xor(v); v.push_back(1); vector<int> b = get_pairwise_xor(v); multiset<int> s(b.begin(), b.end()); for (int i : a) { s.erase(s.find(i)); } set<int> ss(s.begin(), s.end()); for (int i : ss) { if (i) { inds[i^ans[0]] += 1 << j; } } } for (auto [a, b] : inds) { ans[b] = a; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...