Submission #564830

# Submission time Handle Problem Language Result Execution time Memory
564830 2022-05-19T18:41:08 Z birthdaycake Question (Grader is different from the original contest) (CEOI14_question_grader) C++14
100 / 100
3104 ms 24076 KB
int b[950];

void cal(){
    b[0] = 1;
    int num = 1;
    for(int i = 0; num < 950; i++){
        if(__builtin_popcount(i) == 6) b[num++] = i;
    }
}

int encode (int n, int x, int y) {
    if(b[0] == 0) cal();
    for(int i = 0; i < 12; i++){
        if((b[x] & (1 << i)) && !(b[y] & (1 << i))){
            return i + 1;
        }
    }
    return 1;
}
int b[950];

void cal(){
    b[0] = 1;
    int cnt = 1;
    for(int i = 0; cnt < 950; i++){
        if(__builtin_popcount(i) == 6) b[cnt++] = i;
    }
}

int decode (int n, int q, int h) {
    if(b[0] == 0) cal();
    if(b[q] & (1 << (h - 1))  ) return 1;
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 3104 ms 24076 KB Output is correct - maxh = 12
2 Correct 3076 ms 24052 KB Output is correct - maxh = 12