#include <bits/stdc++.h>
#define ll long long
using namespace std;
struct df{
int cod;
int num;
};
int n,m,r[200005],tmp,p,cnt;
df f[3][200005];
int main()
{
scanf("%d",&n);
m=n;
for(int i=1;i<=n;i++)
{
scanf("%d",&f[1][i]);
f[1][i].num=i;
}
while(n!=0)
{
p++;
tmp=0;
bool o=0,a=0;
for(int i=1;i<=m;i++)
{
cnt++;
if(f[p%2][i].cod==1&&a==0)
{
o=0;
a=1;
f[p%2][i].cod=-1;
printf("%d ",f[p%2][i].num);
n--;
}
else
if(f[p%2][i].cod==0&&o==0)
{
f[p%2][i].cod=-1;
a=0;
o=1;
printf("%d ",f[p%2][i].num);
n--;
}
if(f[p%2][i].cod!=-1)
{
tmp++;
f[(p+1)%2][tmp].cod=f[p%2][i].cod;
f[(p+1)%2][tmp].num=f[p%2][i].num;
}
}
m=n;
printf("\n");
}
return 0;
}