This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
std::vector<std::vector<int>> devise_strategy(int N) {
ll x=26;
ll bsbit=13;
ll r[2]={-1,-2};//Respuesta
vector<int> bs(bsbit,(1LL<<bsbit)/2);
for(int i=1;i<=bsbit;i++)bs[i]=bs[i-1]/2;
vector<vector<int>> v (x,vector<int> (N + 1, 0));
for(int i=0;i<=x;i++){
ll inf=i;
ll bit=inf%bsbit;
inf/=bsbit;
v[i][0]=bit%2;//Bolsa
// cerr<<"bit: "<<12-bit<<" bolsa:"<<v[i][0]<<" contenido de la otra:"<<inf<<"\n";
for(int j=1;j<=N;j++){
ll actualbit=j/bs[bit];
actualbit%=2;
//cerr<<"\t"<<actualbit<<"\n";
if(actualbit!=inf){
if(actualbit<inf)v[i][j]=r[v[i][0]];
else v[i][j]=r[1-v[i][0]];
}
else{
if(bit==12)continue;
v[i][j]=((j/bs[bit+1])%2)*bsbit+(bit+1);
}
}
}
// cout<<"\n(:\n";
return v;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |