int arr[924],pos;//C(12,6)
int encode (int n, int x, int y) {pos=0;
for(int i=0,x,y;i<4096;i++){x=i;y=0;
while(x>=1)
y+=(x%2),x/=2;
if(y==6)arr[pos++]=i;
}
for(int i=0;i<12;i++)
if((arr[x-1]>>i&1) and !(arr[y-1]>>i&1))
return i+1;
}
int arr[924],pos;
int decode (int n, int q, int h){pos=0;
for(int i=0,x,y;i<4096;i++){x=i;y=0;
while(x>=1)
y+=(x%2),x/=2;
if(y==6)arr[pos++]=i;
}
return (arr[q-1]>>(h-1)&1);
}
Compilation message
encoder.cpp: In function 'int encode(int, int, int)':
encoder.cpp:11:1: warning: control reaches end of non-void function [-Wreturn-type]
11 | }
| ^
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
7061 ms |
2384 KB |
Time limit exceeded |
2 |
Execution timed out |
7050 ms |
2296 KB |
Time limit exceeded |