Submission #44069

#TimeUsernameProblemLanguageResultExecution timeMemory
44069dhkim0225cmp (balkan11_cmp)C++14
91 / 100
2204 ms94584 KiB
#include "cmp.h" void remember(int n) { for (int i = 4; i >= 1; i--) { if (n >= 8) { int r = n % 8; n /= 8; bit_set(i * 1000 + r); } else if (n == 0) bit_set(i * 1000); else { bit_set(i * 1000 + n); n = 0; } } } int compare(int b) { int base4[5] = { 0, }; for (int i = 4; i >= 1; i--) { if (b >= 8) { base4[i] = (b % 8); b /= 8; } else { base4[i] = b; break; } } for (int i = 1; i <= 4; i++) { if (bit_get(1000 * i + base4[i])) continue; else { if (base4[i] >= 4) { for (int j = base4[i] + 1; j < 8; j++) { if (bit_get(1000 * i + j)) return -1; } return 1; } else { for (int j = base4[i] - 1; j >= 0; j--) { if (bit_get(1000 * i + j)) return 1; } return -1; } } } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...