Submission #983961

#TimeUsernameProblemLanguageResultExecution timeMemory
983961vjudge1Permutation (APIO22_perm)C++17
0 / 100
1 ms6748 KiB
#include <bits/stdc++.h> #include "perm.h" using namespace std; #define TL ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); #define rall(s) s.rbegin(),s.rend() #define all(s) s.begin(),s.end() #define pb push_back #define se second #define fi first #define ll long long #define ld long double #define YES cout<<"YES\n" #define Yes cout<<"Yes\n" #define yes cout<<"yes\n" #define NO cout<<"NO\n" #define No cout<<"No\n" #define no cout<<"no\n" const int N = 1e5 + 9 , mod = 1e9 + 7; ll a[N] , b[N] , dp[N] , c[N] , d[N] , sum[N]; vector<int>v[N]; vector<int> construct_permutation(ll k){ ll x = 100000 , l; k--; for(int i = 100; i >= 1; i--){ dp[i] = sum[i + 1] + 1; sum[i] = sum[i + 1] + dp[i]; if(dp[i] > k){ l = i + 1 ;break;} v[i].pb(x); k -= dp[i]; x--; } for(int i = l; i <= 100; i++){ while(k >= dp[i]){ k -= dp[i]; v[i].pb(x); x--; } } vector<int>ans; for(int i = l; i <= 100; i++){ for(auto to : v[i]) ans.pb(to - x - 1); } return ans; } /* int main(){ TL; vector<int>v = construct_permutation(3); for(auto to : v) cout<<to<<" "; #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); #endif }*/ // Author : حسن

Compilation message (stderr)

perm.cpp: In function 'std::vector<int> construct_permutation(long long int)':
perm.cpp:36:13: warning: 'l' may be used uninitialized in this function [-Wmaybe-uninitialized]
   36 |     for(int i = l;  i <= 100; i++){
      |             ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...