#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")