# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
4697 | 2013-12-19T02:53:11 Z | cki86201 | 비교 (balkan11_cmp) | C++ | 2212 ms | 96084 KB |
#include"cmp.h" void remember(int n){ n+=1365; while(n){ bit_set(n); n=(n-1)/4; } } int compare(int b) { int t[7],i; b+=1365; for(i=1;i<=6;i++)t[i]=b,b=(b-1)/4; int st=1,en=6,mi,lca=0; while(st<=en){ mi=(st+en)>>1; if(!bit_get(t[mi]))st=mi+1,lca=mi; else en=mi-1; } if(lca==0)return 0; int a=(t[lca]-1)%4; if(a==3)return 1; if(a==2)return bit_get(t[lca]+1)?-1:1; if(a==1)return bit_get(t[lca]-1)?1:-1; if(a==0)return -1; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2212 ms | 96084 KB | Output is correct - maxAccess = 10, score = 100 |