#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> pii;
typedef long long LL;
vector<LL> V;
void f(int n, int k, LL d){
if (n >= 12){
if (k == 6) V.push_back(d);
return;
}
if (k < 6) f(n+1, k-1, d*2+1);
f(n+1, k, d*2);
}
int encode(int n, int x, int y) {
if (V.empty()) f(0, 0, 0);
for (int i=1; i<=12; i++) if ((x&(1ll<<(i-1))) && !(y&(1ll<<(i-1)))) return i;
}
#include <bits/stdc++.h>
using namespace std;
typedef pair<int,int> pii;
typedef long long LL;
vector<LL> V;
void f(int n, int k, LL d){
if (n >= 12){
if (k == 6) V.push_back(d);
return;
}
if (k < 6) f(n+1, k-1, d*2+1);
f(n+1, k, d*2);
}
int decode(int n, int q, int h) {
if (V.empty()) f(0, 0, 0);
if (V[q] & (1<<(h-1))) return 1;
return 0;
}
Compilation message
encoder.cpp: In function 'int encode(int, int, int)':
encoder.cpp:19:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Execution timed out |
7092 ms |
7096 KB |
Time limit exceeded |
2 |
Execution timed out |
7064 ms |
7048 KB |
Time limit exceeded |