Submission #158900

#TimeUsernameProblemLanguageResultExecution timeMemory
158900usernameMinerals (JOI19_minerals)C++14
40 / 100
27 ms1528 KiB
#include "minerals.h" #pragma GCC optimize("O3") #include<bits/stdc++.h> using namespace std; #define REP(i,j,k) for(int i=(j);i<(k);++i) #define RREP(i,j,k) for(int i=int(j)-1;i>=(k);--i) #define pb push_back // #define __debug #ifdef __debug #define pr(...) cerr<<__VA_ARGS__ #define ar(a,s,t) {rep(zy,s,t)pr(a[zy]<<' ');pr(endl);} #else #define pr(...) (void)0 #define ar(...) (void)0 #endif // const int maxn=43009; bitset<2*maxn>bs; int ls=0,res[2*maxn]; int qr(int x){ int t=Query(x+1); swap(t,ls); return ls==t; } void Solve(int n){ REP(i,0,2*n)qr(i); REP(i,0,16){ bs.reset(); REP(j,0,2){ REP(k,0,2*n){ if((k>>i)%2==j){ if(!qr(k))bs[k]=1; } } REP(k,0,2*n){ if((k>>i)%2==j){ if(!qr(k))bs[k]=1; } } } REP(j,0,2*n)res[j]|=(!bs[j])<<i; } REP(i,0,2*n)if(i<(i^res[i]))Answer(i+1,(i^res[i])+1); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...