Submission #927707

#TimeUsernameProblemLanguageResultExecution timeMemory
927707MuntherCarrotcmp (balkan11_cmp)C++17
0 / 100
628 ms107024 KiB
#include <bits/stdc++.h> #include "cmp.h" using namespace std; // void bit_set(int add) // int bit_get(int add); void remember(int a){ for(int i = 0; i < 4; i++){ bit_set(a % 8 + i * 8 + 1); a /= 8; } } int compare(int b){ srand(time(0)); int dig[4]; for(int i = 0; i < 4; i++){ dig[i] = b % 8; b /= 8; } int i = 3; for(; i >= 0; i--){ int x = bit_get(dig[i] + i * 8 + 1); if(x == 0) break; } if(i == -1){ return 0; } else{ if(dig[i] == 7){ return 1; } if(dig[i] == 6){ int x = bit_get(7 + i * 8 + 1); return x == 1 ? -1 : 1; } if(dig[i] == 5){ int x = 0; for(int j = dig[i] + 1; j < 8; j++){ x |= bit_get(j + i * 8 + 1); } return x == 1 ? -1 : 1; } if(dig[i] == 4){ return rand() % 2 ? -1 : 1; } if(dig[i] == 3){ int x = 0; for(int j = 0; j < dig[i]; j++){ x |= bit_get(j + i * 8 + 1); } return x == 1 ? 1 : -1; } if(dig[i] == 2){ int x = 0; for(int j = 0; j < dig[i]; j++){ x |= bit_get(j + i * 8 + 1); } return x == 1 ? 1 : -1; } if(dig[i] == 1){ int x = bit_get(0 + i * 8 + 1); return x == 1 ? 1 : -1; } if(dig[i] == 0){ return -1; } } return 0; } // by me
#Verdict Execution timeMemoryGrader output
Fetching results...