Submission #564420

#TimeUsernameProblemLanguageResultExecution timeMemory
564420marsQuestion (Grader is different from the original contest) (CEOI14_question_grader)C++14
100 / 100
3102 ms24128 KiB
#include <bits/stdc++.h> using namespace std; const int N = 940; int mask[N]; int cnt = 0; void gen(){ cnt = 0; for(int i = 0 ; i < (1 << 12); i ++ ){ if(__builtin_popcount(i) == 6){ mask[++cnt]=i; } } } int encode (int n, int x, int y) { if(mask[1] == 0) gen(); for(int i = 0 ; i < 12; i ++ ){ if((mask[x] & (1 << i)) && !(mask[y] & (1 << i))){ return i + 1; } } return -1; }
#include <bits/stdc++.h> using namespace std; const int NN = 940; int mi[NN]; int cc; void gen0(){ cc = 0; for(int i = 0; i < (1 << 12); i ++ ){ if(__builtin_popcount(i) == 6){ mi[++cc]=i; } } } int decode (int n, int q, int h) { if(mi[1] == 0){ gen0(); } h--; int msk = mi[q]; if((msk & (1 << h))) return true; else return false; }
#Verdict Execution timeMemoryGrader output
Fetching results...