Submission #1247546

#TimeUsernameProblemLanguageResultExecution timeMemory
1247546fskaricaPrisoner Challenge (IOI22_prison)C++20
0 / 100
0 ms324 KiB
#include "prison.h"
#include <bits/stdc++.h>

using namespace std;

#define ll long long
#define fi first
#define se second
#define pii pair<int, int>

int n;
vector <vector<int>> ret;
vector <int> v;

vector<std::vector<int>> devise_strategy(int N) {
    n = N;

    v.clear();
    v.push_back(0);
    for (int i = 1; i <= n; i++) {
        if (i & (1 << 13)) v.push_back(2);
        else v.push_back(1);
    }
    ret.push_back(v);

    int bit = 13;
    for (int i = 1; i < 25; i += 2) {
        bit--;

        v.clear();
        v.push_back(((i + 1) / 2) % 2);
        for (int i = 1; i <= n; i++) {
            if (i & (1 << (bit + 1))) v.push_back(-1);
            else {
                if (i & (1 << bit)) v.push_back(i + 2);
                else v.push_back(i + 1);
            }
        }
        ret.push_back(v);

        v.clear();
        v.push_back(((i + 1) / 2) % 2);
        for (int i = 1; i <= n; i++) {
            if (!(i & (1 << (bit + 1)))) v.push_back(-2);
            else {
                if (i & (1 << bit)) v.push_back(i + 2);
                else v.push_back(i + 1);
            }
        }
        ret.push_back(v);
    }

    return ret;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...