Submission #920509

#TimeUsernameProblemLanguageResultExecution timeMemory
920509PanndaQuestion (Grader is different from the original contest) (CEOI14_question_grader)C++14
100 / 100
2943 ms25080 KiB
#include <bits/stdc++.h> using namespace std; bool computed = false; vector<int> f; void compute() { if (computed) return; computed = true; for (int mask = 0; mask < (1 << 12); mask++) { if (__builtin_popcount(mask) == 6) { f.push_back(mask); } } } int encode(int n, int x, int y) { compute(); x = f[x]; y = f[y]; for (int i = 0; i < 12; i++) { if ((x >> i & 1) && !(y >> i & 1)) { return i + 1; } } assert(false); return -1; }
#include <bits/stdc++.h> using namespace std; bool computed = false; vector<int> f; void compute() { if (computed) return; computed = true; for (int mask = 0; mask < (1 << 12); mask++) { if (__builtin_popcount(mask) == 6) { f.push_back(mask); } } } int decode(int n, int q, int h) { compute(); q = f[q]; h--; return q >> h & 1; }
#Verdict Execution timeMemoryGrader output
Fetching results...