제출 #1189921

#제출 시각아이디문제언어결과실행 시간메모리
1189921anmattroi순열 (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...