#include"bits/stdc++.h"
using namespace std;
int encode (int n, int x, int y) {
int dif = x ^ y;
int id = 0;
while (!(dif & 1)) dif >>= 1, id++;
if (y & (1 << id)) {
id<<=1;
id|=1;
}
else {
id++;
id<<=1;
}
return id;
}
#include"bits/stdc++.h"
using namespace std;
int decode (int n, int q, int h) {
bool flip = 0;
if (h & 1) {
flip = 1;
h>>=1;
} else {
h >>= 1;
h--;
}
if (q & (1 << h)) return 1^flip;
else return 0^flip;
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Partially correct |
3051 ms |
24204 KB |
Output is partially correct - maxh = 20 |
2 |
Partially correct |
3067 ms |
24196 KB |
Output is partially correct - maxh = 20 |