# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1261082 | SzymonKrzywda | 질문 (CEOI14_question_grader) | C11 | 0 ms | 0 KiB |
#include <iostream>
#include <vector>
using namespace std;
bool wygen = 0;
vector<int> liczby;
void gen() {
wygen = 1;
const int K = 1 << 12;
for (int msk = 0; msk < K; msk++) {
int ile = 0;
for (int bit = 0; bit < 12; bit++) {
if ((1 << bit) & msk) ile++;
}
if (ile == 6) liczby.push_back(msk);
}
}
int encode (int n, int x, int y) {
if (!wygen) gen();
for (int i = 0; i < 12; i++) {
if (((1 << i) & liczby[x]) && !((1 << i) & liczby[y])) return i + 1;
}
}
#include <iostream>
#include <vector>
using namespace std;
bool wygen = 0;
vector<int> liczby;
void gen() {
wygen = 1;
const int K = 1 << 12;
for (int msk = 0; msk < K; msk++) {
int ile = 0;
for (int bit = 0; bit < 12; bit++) {
if ((1 << bit) & msk) ile++;
}
if (ile == 6) liczby.push_back(msk);
}
}
int decode (int n, int q, int h) {
if (!wygen) gen();
h--;
if (q & (1 << h)) return 1;
else return 0;
}