Submission #347092

#TimeUsernameProblemLanguageResultExecution timeMemory
347092ACmachineQuestion (Grader is different from the original contest) (CEOI14_question_grader)C++17
100 / 100
3879 ms24680 KiB
int sets[10001], id = 1; int encode (int n, int x, int y) { if(id == 1){ for(int i = 0; i < (1 << 12); ++i){ if(__builtin_popcount(i) == 6) sets[id++] = i; } } x = sets[x]; y = sets[y]; for(int i = 0; i < 12; ++i){ if((x&(1 << i)) && !(y&(1 << i))) return i + 1; } return 0; }
int pp[10001],cnt=0; int decode (int n, int q, int h) { if (!cnt){ for (int i=0;i<(1<<12);++i) if (__builtin_popcount(i) == 6)pp[cnt++]=i; } q = pp[q-1]; return ((q>>(h-1))&1); }
#Verdict Execution timeMemoryGrader output
Fetching results...