Submission #984131

# Submission time Handle Problem Language Result Execution time Memory
984131 2024-05-16T10:27:25 Z vjudge1 Permutation (APIO22_perm) C++17
71.2154 / 100
362 ms 1376 KB
#include "perm.h"
#include<bits/stdc++.h>
#define sz size()
#define ll long long
using namespace std;
mt19937_64 rnd(990910211394901);
vector<int> construct_permutation(ll k)
{
    ll z = 1, sum = 0;
    k;
    vector<ll> x;

    for(ll j = 59; j > 0; --j)
    {
        if((z << j) > k) continue;
        x.push_back(j);
        k -= (z << j);
        sum += j;
        break;
    }

    for(ll t = 1; t <= 100000; ++t)
        for(ll j = 59; j > 0; --j)
        {
            if((z << j) - 1 > k) continue;
            ll _j = j - rnd() % (z + 1);
            _j = max(1ll, j);
            x.push_back(_j);
            k -= (z << _j) - 1;
            sum += _j;
        }

    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 << ' ';
//}

Compilation message

perm.cpp: In function 'std::vector<int> construct_permutation(long long int)':
perm.cpp:10:5: warning: statement has no effect [-Wunused-value]
   10 |     k;
      |     ^
# Verdict Execution time Memory Grader output
1 Correct 7 ms 344 KB Output is correct
2 Correct 313 ms 412 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 7 ms 344 KB Output is correct
2 Correct 313 ms 412 KB Output is correct
3 Partially correct 346 ms 676 KB Partially correct
4 Partially correct 339 ms 344 KB Partially correct
5 Partially correct 353 ms 712 KB Partially correct
6 Partially correct 347 ms 596 KB Partially correct
7 Partially correct 357 ms 1196 KB Partially correct
8 Partially correct 348 ms 1044 KB Partially correct
9 Correct 362 ms 680 KB Output is correct
10 Partially correct 351 ms 1376 KB Partially correct
11 Partially correct 359 ms 1072 KB Partially correct
12 Partially correct 360 ms 1000 KB Partially correct
13 Partially correct 347 ms 1104 KB Partially correct