This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
using namespace std;
int N, A[200005];
int R[200005], nxt[200005];
vector<int> C;
int32_t main() {
ios_base::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin >> N;
for(int l = 0; l < N; l++) {
cin >> A[l];
C.push_back(A[l]);
}
memset(R, -1, sizeof R);
sort(C.begin(), C.end());
C.erase(unique(C.begin(), C.end()), C.end());
for(int l = 0; l < N; l++) {
A[l] = lower_bound(C.begin(), C.end(), A[l]) - C.begin();
}
for(int l = N - 1; l >= 0; l--) {
nxt[l] = R[A[l]]; R[A[l]] = l;
}
for(int l = 0; l < N; l++) {
if(nxt[l] == -1) continue;
int K = nxt[l];
for(; l < K; l++)
A[l] = A[K];
l--;
}
for(int l = 0; l < N; l++) {
cout << C[A[l]] << "\n";
}
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |