#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 time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |