Submission #127372

#TimeUsernameProblemLanguageResultExecution timeMemory
127372UtahaBroken Device (JOI17_broken_device)C++14
85 / 100
44 ms3312 KiB
#include "Annalib.h" void Anna( int N, long long X, int K, int P[] ){ bool ret[150]={0}; bool notused[150]={0}; for(int i=0;i<K;i++){ notused[P[i]]=1; notused[P[i]^1]=1; } int pt=38; for(int i=0;i<N;i+=2) if(!notused[i]){ long long type=X%3; X/=3; if(type==0){ ret[i]=1; ret[i+1]=0; } else if(type==1){ ret[i]=0; ret[i+1]=1; } else{ ret[i]=ret[i+1]=1; } pt--; if(pt==0) break; } for(int i=0;i<N;i++) Set(i,ret[i]); }
#include "Brunolib.h" long long Bruno( int N, int A[] ){ long long ret=0; long long base=1; for(int i=0;i<N;i+=2){ if(A[i]==0&&A[i+1]==0) continue; int type=-1; if(A[i]==1){ if(A[i+1]==1) type=2; else type=0; } else type=1; ret+=base*type; base*=3; } return ret; }
#Verdict Execution timeMemoryGrader output
Fetching results...