# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
969552 | 2024-04-25T09:53:08 Z | Syrius | Permutation (APIO22_perm) | C++17 | 0 ms | 0 KB |
#include <bits/stdc++.h> // #include "perm.h" using namespace std; // #define int long long #define ll long long #define ff first #define ss second #define pint pair < int , int > #define fast ios_base::sync_with_stdio(NULL); cin.tie(NULL) typedef vector < int > vint; const int inf = 1e9 + 9; const int mxn = 2e5 + 2; const int mod = 1e9 + 7; vint contsruct_permutation(ll k) { vint v; int mn = 0 , mx = 0; int kk = k; while (k != 1) { if (k % 2 == 0) k /= 2; else k--; mx++; } k = kk; while (k != 1) { if (k % 2 == 0) { k /= 2; v.push_back(mx); mx--; } else { k--; v.push_back(mn); } } reverse(v.begin() , v.end()); return v; }