#include<stdio.h>
#define MAX 100
int main() {
int n;
scanf("%d",&n);
//矩形 赋值+输出
int i,j,a[MAX][MAX];
for(i=0;i<n;i++){
for(j=0;j<n;j++){
a[i][j]=i*n+j+1;
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
printf("%02d",a[i][j]);
}
printf("\n");
}
printf("\n");
//三角形赋值+输出
int cnt=0;
for(i=0;i<n;i++){
for(j=0;j<=i;j++){
a[i][j]=cnt+1;
cnt++;
}
}
for(i=0;i<n;i++){
for(int k=0;k<n-i-1;k++) printf(" ");
for(j=0;j<=i;j++){
printf("%02d",a[i][j]);
}
printf("\n");
}
return 0;
}