#include <stdio.h>
int arr[101][101];
int n;
int i,j;
int m;
int tmp;
void Print(){
for(i=1;i<=n;i++){
for(j=1;j<=n-i+1;j++)
printf("%d ",arr[i][j]);
puts("");
}
}
void fun(){
//i j 初值为1
i=1,j=1;
//保底用
tmp = 1;
//计数从1开始
m = 1;
while(1){
arr[i][j] = m++;
if(i==1 && j==n)//结束的条件
break;
//i向上走 分析情况
if(i==1){
tmp+=1;
i=tmp;
j=1;
}else{
i--;
j+=1;
}
}
}
int main(){
scanf("%d",&n);
fun();
Print();
return 0;
}