Submission #41078

#TimeUsernameProblemLanguageResultExecution timeMemory
41078hsb154비교 (balkan11_cmp)C++14
46 / 100
2791 ms104980 KiB
#include "cmp.h" void remember(int n) { int mask = 1 << 11; int me = 0; for (int i = 0; mask; i++) { if (mask&n) { me = me * 2 + 2; bit_set(me); } else { me = me * 2 + 1; bit_set(me); } mask >>= 1; } } int compare(int b) { int left = 1; int right = 12; int mid = (left + right) / 2; int ret=-2; while (1) { int mask = 1 << 12; int me = 0; mid = (left + right) / 2; if (left > right) { if (ret==-2) return 0; else return ret; } for (int i = 0; i<mid; i++) { mask >>= 1; if (mask&b) { me = me * 2 + 2; } else { me = me * 2 + 1; } } if (bit_get(me)) { left = mid + 1; } else { right = mid - 1; ret = ((mask)&b) == (mask) ? 1 : -1; } } }
#Verdict Execution timeMemoryGrader output
Fetching results...