Submission #931075

# Submission time Handle Problem Language Result Execution time Memory
931075 2024-02-21T07:54:47 Z sleepntsheep Permutation (APIO22_perm) C++17
10 / 100
1 ms 348 KB
#include "perm.h"
#include <stdio.h>
#include <algorithm>

std::vector<int> construct_permutation(long long k)
{
    std::vector<int> v;
    int msb = 63 - __builtin_clzll(k);

    for (int i = 1; i <= msb; ++i) v.push_back(i*2);
    k &= ~(1ll << k);
    for (int i = msb - 1; i >= 0; --i)
    {
        if (k & (1ll << i))
        {
            v.push_back(i*2+1);
        }
    }

    auto w = v;
    std::sort(w.begin(), w.end());
    for (int &x : v) x = std::lower_bound(w.begin(), w.end(), x) - w.begin();
    //for (int x : v) printf("%d  ", x);

	return v;
}

# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Incorrect 1 ms 348 KB Output isn't correct
4 Halted 0 ms 0 KB -