Submission #1212301

#TimeUsernameProblemLanguageResultExecution timeMemory
1212301jasonicPermutation (APIO22_perm)C++20
100 / 100
1 ms328 KiB
#include "perm.h" #include <bits/stdc++.h> using namespace std; #define ll long long int mnVal; void fix(vector<int> &res) { int mn = 0; for(auto &i : res) mn = min(mn, i); for(auto &i : res) i -= mn; } vector<int> solve(ll k) { vector<int> res; if(k == 2) { return {0}; } else if (k != 1) { for(auto prime : {2, 3, 5, 7, 11}) { if(k % prime == 0 && k != prime) { res = solve(k/prime); vector<int> res2 = solve(prime); fix(res); fix(res2); int sizeee = (int)size(res); for(auto i : res2) res.push_back(i + sizeee); return res; } } res = solve(k - 1); res.push_back(-1); fix(res); } return res; } vector<int> construct_permutation(ll k) { mnVal = -1; vector<int> res = solve(k); fix(res); return res; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...