# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1197336 | sodbayr | Permutation (APIO22_perm) | C++20 | 0 ms | 0 KiB |
#include<bits/stdc++.h>
#include "perm.h"
#define ll int
#define ss second
#define ff first
#define pb push_back
#define endl "\n"
using namespace std;
vector<ll> construct_permutation(ll n){
ll t=0;
vector<ll> v;
for(ll i=59;i>=0;i--){
if(n>>i&1){
if(t==0){
t=1;
ll ss=1;
for(ll j=1;j<=i;j++){
v.pb(ss);
ss+=100;
}
}
else{
v.pb(v[i]-1);
}
}
}
map<ll,ll> mp;
for(ll w : v){
mp[i]=1;
}
ll b=0;
for(auto w : mp){
mp[w.ff]=b++;
}
for(ll &w : v){
w=mp[i];
}
return v;
}
/*int main(){
ios::sync_with_stdio(false);
cout.tie(0);
cin.tie(0);
ll n;cin>>n;
vector<ll> a(n);
a=construct_permutation(n);
for(ll i=1;i<=n;i++){
cout<<a[i]<<' ';
}
}*/