# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
564844 | Uzouf | 질문 (CEOI14_question_grader) | C++14 | 2926 ms | 24228 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
int encode(int n,int x,int y) {
int h=-1;
for (int p=0;p<=9;p++) {
int a=((1<<p)&x),b=((1<<p)&y);
if (a==(1<<p) && b!=(1<<p)) {
h=p+1; break;
}
}
if (h==-1) {
int pa=__builtin_popcount(x),pb=__builtin_popcount(y);
for (int p=0;p<=4;p++) {
int a=((1<<p)&pa),b=((1<<p)&pb);
if (a!=(1<<p) && b==(1<<p)) {
h=11+p; break;
}
}
}
return h;
}
int decode(int n,int q,int h) {
h--;
if (h>=10) {
h-=10;
int k=__builtin_popcount(q);
if (((1<<h)&k)!=(1<<h)) return 1;
else return 0;
}
else {
if (((1<<h)&q)!=(1<<h)) return 0;
else return 1;
}
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |