#include <iostream>
#include<vector>
#include<stack>
using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    int n;
    cin>>n;
    vector<int>p(n);
    for(int i=0;i<n;i++){
        cin>>p[i];
    }
    stack<int>st;
    vector<int>res;
    int max_p=n;
    for(int num:p){
        st.push(num);
        while(!st.empty()&&st.top()==max_p){
            res.push_back(st.top());
            st.pop();
            max_p--;
        }
    }
    for(size_t i=0;i<res.size();i++){
        if(i>0)cout<<" ";
        cout<<res[i];
    }
    while(!st.empty()){
        cout<<" "<<st.top();
        st.pop();
    }
    cout<<endl;
    return 0;
}
// 64 位输出请用 printf("%lld")