//altgr+costado ñ+ espacio-> ^
//altgr+costado 0 -> barrita invertida
#include <bits/stdc++.h>
#include"interactive.h"
//#define fastio ios_base::sync_with_stdio(0); cin.tie(0);
#define ss second
#define ff first
#define ll long long
const int MAX=5e5+5;
const ll MOD=998244353;
using namespace std;
vector<int> guess(int n){
vector<int>ans(n);
ans[0]=ask(1);
map<int,int>awa;
for(int i=0;(1<<i)<=n;i++){
vector<int>q;
for(int j=2;j<=n;j++){
if(j&(1<<i)) q.push_back(j);
}
auto A=get_pairwise_xor(q);
q.push_back(1);
auto B=get_pairwise_xor(q);
map<int,int>m;
for(auto it:B){
m[it]++;
}
for(auto it:A){
m[it]--;
}
for(auto it:m){
if(it.ss==0) continue;
awa[(ans[0]^it.ff)]|=(1<<i);
}
}
for(auto it:awa){
ans[it.ss-1]=it.ff;
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |