#include<bits/stdc++.h>
using namespace std;
stack <int> q;
int a[1000000];
int b[1000000];
int main()
{
int i,j,k;
cin>>i;
for(j=1;j<=i;j++)
{
cin>>a[j];
b[j]=a[j];
}
int max_id=i;
sort(a+1,a+i+1);
for(j=1;j<=i;j++)
{
q.push(b[j]);
while(q.top()==a[max_id])
{
cout<<q.top()<<" ";
q.pop();
max_id--;
if(q.empty())
{
break;
}
}
}
while(q.size()!=0)
{
cout<<q.top()<<" ";
q.pop();
if(q.size()==0)
{
return 0;
}
}
}