Submission #552848

#TimeUsernameProblemLanguageResultExecution timeMemory
552848Aldas25Question (Grader is different from the original contest) (CEOI14_question_grader)C++14
0 / 100
3046 ms24220 KiB
#define FOR(i, a, b) for (int i = (a); i <= (b); i++)

int firstBit (int x, int y) {
    FOR(i, 0, 15)
        if ((x&(1<<i)) != (y&(1<<i)))
            return i;

    return -1;
}

int encode (int n, int x, int y) {
  int b = firstBit(x, y);
       // if (b == -1) exit(1);
        b++;

        int code = b<<1;
        if (x & (1<<(b-1))) code++;

    return code;
}
	
int decode (int n, int q, int h) {
	bool one = false;
        if (h&1) one = true;
        h >>= 1;
        h--;
        bool has = false;
        if (q & (1<<h)) has = true;

        if (has==one) return 1;
        else return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...