#include <stdio.h>

int main() {
   int n=0;
   int a[34][34];//n最大为34,故只需定义34大小的数组;
   int i,j;
   scanf("%d",&n);
    for( i=0;i<n;i++){
        for( j=0;j<=i;j++){
            a[i][0]=1;//每行第一个数赋值为1;
            if(j>=1&&i>=1){
                a[i][j]=a[i-1][j]+a[i-1][j-1];
            }
            if(j==i){
                a[i][j+1]=0;//使每行末尾的后一位为0,由此可以得到每行末尾的数为1,由于循环结束为i=j,故0不会被打印出来;
            }
             printf("%d ",a[i][j]);
        }
        printf("\n");
       
    }
    return 0;
}