제출 #223026

#제출 시각아이디문제언어결과실행 시간메모리
223026dolphingarlic비교 (balkan11_cmp)C++14
55 / 100
1700 ms94840 KiB
#include "cmp.h"

const int K = 2;

void remember(int n) {
    for (int i = 12 - K, j = 1; i > -1; i -= K, j *= (1 << K) + 1) {
        int curr = ((n >> i) & ((1 << K) - 1)) + 1;
        bit_set(curr + j);
    }
}

int compare(int b) {
    for (int i = 12 - K, j = 1; i > -1; i -= K, j *= (1 << K) + 1) {
        int curr = ((b >> i) & ((1 << K) - 1)) + 1;
        if (bit_get(curr + j)) continue;

        for (int k = 1; k < curr; k++) if (bit_get(k + j)) return 1;
        return -1;
    }
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...