Submission #1274845

#TimeUsernameProblemLanguageResultExecution timeMemory
1274845jose_ernestoStone Arranging 2 (JOI23_ho_t1)C++20
100 / 100
209 ms35328 KiB
#include <bits/stdc++.h>
#define int long long
#define endl "\n"
#define pii pair<int, int>
#define sd second
#define fs first
#define vi vector<int>
#define vii vi<vi>
#define vpii vector<pii>
#define pb push_back
#define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);

using namespace std;

const int oo=1e18,MAX=2e5+5;

int32_t main(){
    fast
    int n,cont=0;
    cin>>n;
    int a[n+1];
    vi fr(n+1,oo),bk(n+1,oo),p(n*2,oo);
    map<int,int> mp,mp1;
    for(int i=1;i<=n;i++){
        cin>>a[i];
        mp[a[i]]=1;
    }
    for(auto i:mp){
        cont++;
        mp[i.fs]=cont;
        mp1[cont]=i.fs;
    }
    for(int i=1;i<=n;i++){
        int act=mp[a[i]];
        if(p[act]<i){fr[p[act]]=i;}
        p[act]=i;
    }
    int pos=1,aux;
    for(int i=1;i<=n;i++){
        if(i<pos){cout<<aux<<" ";continue;}
        if(fr[i]==oo){cout<<a[i]<<" ";}
        if(fr[i]!=oo){aux=a[fr[i]];pos=fr[i];cout<<aux<<" ";}
    }

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...