Submission #635185

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
6351852022-08-25 15:32:33BruteforcemanXoractive (IZhO19_xoractive)C++11
100 / 100
6 ms472 KiB
#include <bits/stdc++.h>
#include "interactive.h"
using namespace std;
vector<int> ans;
map<int, int> pos;
vector<int> guess(int n) {
ans.assign(n, 0);
ans[0] = ask(1);
int logN = 31 - __builtin_clz(n);
//cerr << logN << '\n';
for (int b = 0; b <= logN; b++) {
cerr << b << '\n';
// get the values of ans[0] ^ ... for the indices whose b-th bit is on
// by inserting 1 to said set of indices
multiset<int> bitval;
vector<int> toQuery, queryAns;
for (int i = 2; i <= n; i++) {
if (i & (1 << b)) {toQuery.push_back(i);}
}
toQuery.push_back(1);
queryAns = get_pairwise_xor(toQuery);
for (auto &i : queryAns) {bitval.insert(i);}
toQuery.pop_back();
queryAns = get_pairwise_xor(toQuery);
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

Xoractive.cpp: In function 'std::vector<int> guess(int)':
Xoractive.cpp:44:17: warning: structured bindings only available with '-std=c++17' or '-std=gnu++17'
   44 |      for (auto &[val, idx] : pos) {
      |                 ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...