#include<iostream>
#include<math.h>
#include<stdio.h>
using namespace std;
int main(){
int n,n1,i,j,k,m[101]={0},w[101]={0},r[101][101]={0},num=-1,max = 0;
cin>>n;
for(i=0;i<n;i++){
cin>>m[i];
m[i] = m[i]*10;
w[i] = m[i];
if(max<w[i])
max = w[i];
}
for(j=0;j<max;j++)
for(i=0;i<n;i++){
if(m[i]>0){
num++;
m[i]--;
if(num-r[i][j-1]>1)
r[i][j] = num;
else{
num++;
r[i][j] = num;
}
}
}
for(i=0;i<n;i++){
cout<<"#"<<i+1<<endl;
for(j=0;j<w[i];j++){
if((j+1)%10!=0)
cout<<r[i][j]<<" ";
else
cout<<r[i][j];
if((j+1)%10==0&&j!=0&&j!=w[i]-1)
cout<<endl;
}
if(i!=n-1)
cout<<endl;
}
}
#include<math.h>
#include<stdio.h>
using namespace std;
int main(){
int n,n1,i,j,k,m[101]={0},w[101]={0},r[101][101]={0},num=-1,max = 0;
cin>>n;
for(i=0;i<n;i++){
cin>>m[i];
m[i] = m[i]*10;
w[i] = m[i];
if(max<w[i])
max = w[i];
}
for(j=0;j<max;j++)
for(i=0;i<n;i++){
if(m[i]>0){
num++;
m[i]--;
if(num-r[i][j-1]>1)
r[i][j] = num;
else{
num++;
r[i][j] = num;
}
}
}
for(i=0;i<n;i++){
cout<<"#"<<i+1<<endl;
for(j=0;j<w[i];j++){
if((j+1)%10!=0)
cout<<r[i][j]<<" ";
else
cout<<r[i][j];
if((j+1)%10==0&&j!=0&&j!=w[i]-1)
cout<<endl;
}
if(i!=n-1)
cout<<endl;
}
}