Submission #1225050

#TimeUsernameProblemLanguageResultExecution timeMemory
1225050SpyrosAlivPermutation (APIO22_perm)C++20
64.62 / 100
13 ms1116 KiB
#include <bits/stdc++.h>
using namespace std;
#define ll long long

vector<int> construct_permutation(ll k) {
    k--;
    vector<int> perm;
    vector<int> bits;
    for (int i = 0; i < 61; i++) {
        if (!((k >> i) & 1)) continue;
        bits.push_back(i);
    }
    int curr = 0;
    for (auto x: bits) {
        int prev = curr;
        curr += x;
        vector<int> nxt;
        for (int j = prev+1; j <= curr; j++) {
            nxt.push_back(j);
        }
        nxt.push_back(prev);
        for (auto x: perm) nxt.push_back(x);
        perm = nxt;
        curr++;
    }
    return perm;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...