Submission #1221966

#TimeUsernameProblemLanguageResultExecution timeMemory
1221966vladilius질문 (CEOI14_question_grader)C++20
100 / 100
726 ms39744 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<int, int>;
#define pb push_back
#define ff first
#define ss second

vector<vector<bool>> f(921, vector<bool>(13));
bool I = 0;

void F(){
    int k = 1;
    for (int i = 0; i < (1 << 12); i++){
        if (k > 920) break;
        int cc = 0;
        for (int j = 0; j < 12; j++){
            if ((i >> j) & 1){
                cc++;
            }
        }
        if (cc == 6){
            for (int j = 0; j < 12; j++){
                if ((i >> j) & 1){
                    f[k][j + 1] = 1;
                }
            }
            k++;
        }
    }
}

int encode(int n, int x, int y){
    if (!I){
        F();
        I = 1;
    }
    for (int i = 1; i <= 12; i++){
        if (f[x][i] && !f[y][i]){
            return i;
        }
    }
    return 0;
}

int decode(int n, int q, int h){
    if (!I){
        F();
        I = 1;
    }
    return f[q][h];
}
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pii = pair<int, int>;
#define pb push_back
#define ff first
#define ss second

vector<vector<bool>> f(921, vector<bool>(13));
bool I = 0;

void F(){
    int k = 1;
    for (int i = 0; i < (1 << 12); i++){
        if (k > 920) break;
        int cc = 0;
        for (int j = 0; j < 12; j++){
            if ((i >> j) & 1){
                cc++;
            }
        }
        if (cc == 6){
            for (int j = 0; j < 12; j++){
                if ((i >> j) & 1){
                    f[k][j + 1] = 1;
                }
            }
            k++;
        }
    }
}

int encode(int n, int x, int y){
    if (!I){
        F();
        I = 1;
    }
    for (int i = 1; i <= 12; i++){
        if (f[x][i] && !f[y][i]){
            return i;
        }
    }
    return 0;
}

int decode(int n, int q, int h){
    if (!I){
        F();
        I = 1;
    }
    return f[q][h];
}
#Verdict Execution timeMemoryGrader output
Fetching results...