제출 #1235214

#제출 시각아이디문제언어결과실행 시간메모리
1235214dizzy_groovy순열 (APIO22_perm)C++20
91.33 / 100
1 ms328 KiB
#include "perm.h"
#include <bits/stdc++.h>

using namespace std;

std::vector<int> construct_permutation(long long k)
{
	vector<int> p;
	long long cur = 1;
	for (long long i = 0; (1ll << (i + 1)) <= k; i++) {
		cur *= 2;
		p.push_back(i);
	}
	long long n = p.size();
	while (k - cur > 0) {
		long long x = __lg(k - cur);
		for (auto &i : p) {
			if (i >= x) i++;
		}
		p.push_back(x);
		cur += (1ll << x);
	}
	return p;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...