Submission #984066

# Submission time Handle Problem Language Result Execution time Memory
984066 2024-05-16T09:48:12 Z vjudge1 Permutation (APIO22_perm) C++17
65.2769 / 100
12 ms 1372 KB
#include "perm.h"
#include<bits/stdc++.h>
#define sz size()
#define ll long long
using namespace std;

vector<int> construct_permutation(ll k)
{
    ll z = 1;
    --k;
    vector<ll> x;
    for(ll t = 1; t <= 100; ++t)
        for(ll j = 59; j >= 0; --j)
        {
            if((z << j) - 1 > k) continue;
            x.push_back(j);
            k -= (z << j) - 1;
        }
    for(ll j = 59; j >= 0; --j)
    {
        if((z << j) - 1 > k) continue;
        x.push_back(j);
        k -= (z << j) - 1;
    }

    reverse(x.begin(), x.end());
    ll cur = 0;
    vector<int> ans;
    for(ll t : x)
    {
        for(ll i = cur + t; i > cur; --i)
            ans.push_back(i - 1);
        cur += t;
    }
    reverse(ans.begin(), ans.end());
    return ans;
}

//signed main()
//{
//    ios_base::sync_with_stdio(0);
//    cin.tie(0), cout.tie(0);
//    ll n;
//    cin >> n;
//    for(auto i : construct_permutation(n))
//        cout << i << ' ';
//}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 1 ms 344 KB Output is correct
3 Partially correct 1 ms 348 KB Partially correct
4 Partially correct 2 ms 348 KB Partially correct
5 Partially correct 5 ms 860 KB Partially correct
6 Partially correct 4 ms 604 KB Partially correct
7 Partially correct 6 ms 972 KB Partially correct
8 Partially correct 9 ms 1116 KB Partially correct
9 Correct 2 ms 344 KB Output is correct
10 Partially correct 12 ms 1372 KB Partially correct
11 Partially correct 8 ms 1116 KB Partially correct
12 Partially correct 10 ms 860 KB Partially correct
13 Partially correct 9 ms 1112 KB Partially correct