#include using namespace std; int main() { int N, A[100000]; map< int, int > last; scanf("%d", &N); for(int i = 0; i < N; i++) { scanf("%d", &A[i]); last[A[i]] = i; } stringstream sss; set< int > sets; for(int i = 0; i < N; i++) { if(i > 0) sss << " "; sets.insert(A[i]); sss << *sets.rbegin(); if(last[A[i]] == i) sets.erase(A[i]); } printf("%s\n", sss.str().c_str()); }