Submission #875591

#TimeUsernameProblemLanguageResultExecution timeMemory
875591hmm789Stone Arranging 2 (JOI23_ho_t1)C++14
100 / 100
133 ms19964 KiB
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define INF 1000000000000000000
#define MOD 998244353
 
int32_t main() {
    ios_base::sync_with_stdio(0);
    cin.tie(0); cout.tie(0);
    int n;
    cin >> n;
    int a[n], nxt[n];
    memset(nxt, -1, sizeof(nxt));
    for(int i = 0; i < n; i++) cin >> a[i];
    map<int, int> m;
    for(int i = n-1; i >= 0; i--) {
        if(m.find(a[i]) != m.end()) nxt[i] = m[a[i]];
        m[a[i]] = i;
    }
    for(int i = 0; i < n;) {
        if(nxt[i] != -1) {
            for(int j = i+1; j < nxt[i]; j++) a[j] = a[i];
            i = nxt[i];
        } else i++;
    }
    for(int i = 0; i < n; i++) cout << a[i] << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...