Submission #1189921

#TimeUsernameProblemLanguageResultExecution timeMemory
1189921anmattroiPermutation (APIO22_perm)C++17
100 / 100
1 ms328 KiB
#include "perm.h" #include <bits/stdc++.h> using namespace std; vector<int> construct_permutation(long long k) { if (k == 1) return {}; if (k == 2) return {0}; for (int i : {2, 3, 5, 7, 11, 13, 17, 19, 23, 29}) { if (k%i == 0 && k > i) { vector<int> l = construct_permutation(k/i), r = construct_permutation(i); for (int &i : r) i += int(l.size()); for (int i : r) l.emplace_back(i); return l; } } vector<int> a = construct_permutation(k/2); a.emplace_back(int(a.size())); if (k & 1LL) a.insert(a.begin(), int(a.size())); return a; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...