Submission #1133178

#TimeUsernameProblemLanguageResultExecution timeMemory
1133178Halym2007Xoractive (IZhO19_xoractive)C++17
94 / 100
3 ms500 KiB
#include <bits/stdc++.h>
#include "interactive.h"
using namespace std;
#define ll long long
#define sz size()
#define ff first
#define ss second
#define pb push_back
#define pii pair <int, int>
#define dur exit(0)
#define dur1 return(0)
const int N = 2e5 + 5;



vector <int> guess (int n) {
	map <int, int> ans;
	int val_n = ask (n);
	for (int bit = 0; bit <= 6; ++bit) {//uzynlyk 7;  x>>bit diymek x-in 2-lik sistemada bashdahy bit sany pozyan diymek
		vector <int> v;
		for (int i = 1; i < n; ++i) {
			if (i >> bit & 1) {//bit-nji 1-a den bolsa
				v.pb (i);
			}
		}		
		map <int, int> cnt;
		vector <int> a1 = get_pairwise_xor (v);
		v.pb (n);
		vector <int> a2 = get_pairwise_xor (v);
		for (int i : a2) {
			cnt[i]++;
		}
		for (int i : a1) {
			cnt[i]--;
		}
		for (auto i : cnt) {
			if (i.ff and i.ss) {
				ans[i.ff ^ val_n] |= (1 << bit);
			}
		}
	}
	vector <int> jog(n, 0);
	for (auto i : ans) {
		jog[i.ss - 1] = i.ff;
	}
	jog[n - 1] = val_n;
	return jog;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...