Submission #726478

#TimeUsernameProblemLanguageResultExecution timeMemory
726478abcvuitunggio순열 (APIO22_perm)C++17
91.33 / 100
3 ms340 KiB
#include "perm.h" #include <bits/stdc++.h> using namespace std; std::vector<int> construct_permutation(long long k) { int ch[1001],res[1001]; memset(ch,0,sizeof(ch)); memset(res,0,sizeof(res)); int mx=0; int id=1; k--; while (k){ for (int i=0;i<=mx;i++) if ((1LL<<i)<=k) res[id]=i; k-=(1LL<<res[id]); if (res[id]==mx) mx++; id++; } id--; for (int i=id;i>=1;i--){ int cnt=0; res[i]++; while (res[i]){ cnt++; if (!ch[cnt]) res[i]--; } res[i]=cnt; ch[cnt]=1; } vector <int> v; for (int i=1;i<=id;i++) v.push_back(res[i]-1); return v; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...