Submission #577298

#TimeUsernameProblemLanguageResultExecution timeMemory
577298handlename순열 (APIO22_perm)C++17
10 / 100
1 ms332 KiB
#include <bits/stdc++.h>
using namespace std;
#define pb push_back
#define mp make_pair
const int MOD=1e9+7;
long long num[64];
vector<int> construct_permutation(long long k){
	k--;
	num[0]=1;
	for (int i=1;i<64;i++){
		num[i]=num[i-1]*2;
	}
	vector<int> res;
	int cur=0;
	while (k>0){
		int pos=min((int)res.size(),63);
		while (k<num[pos]) pos--;
		res.insert(res.begin()+pos,cur);
		k-=num[pos];
		cur++;
	}
	return res;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...