Submission #1220139

#TimeUsernameProblemLanguageResultExecution timeMemory
1220139thangdz2k7Xoractive (IZhO19_xoractive)C++20
0 / 100
2 ms408 KiB
#include "interactive.h"
#include <bits/stdc++.h>

using namespace std;

vector <int> guess(int n){
	vector <int> a(n);
	a[0] = ask(1);

	map <int, int> pos;

	for (int i = 1; (1 << i) < n; ++ i){
		vector <int> idx;
		for (int j = 1; j < n; ++ j) if ((j >> i) & 1) idx.push_back(j + 1);
		map <int, int> cnt;
		for (int val : get_pairwise_xor(idx)) cnt[val] --;
		idx.push_back(1);
		for (int val : get_pairwise_xor(idx)) cnt[val] ++;

		for (auto [val, num] : cnt) if (num > 0) pos[val] |= (1 << i);
	}

	for (auto [val, cur] : pos)
		a[cur] = val;

	return a;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...