#include <bits/stdc++.h>
using namespace std;

int main(){
	int a[10][10] = {0};
	int n,i,j,s;
	cin>>n;
	a[0][0] = 1;//第1行第1个数先赋值 
	for(i = 1;i < n;i++){
		//第i行有i个数 
		for(j = 0;j <= i;j++){
			//第i行第一个数是1 
			if(j == 0){
				a[i][j] = 1;
			}else{
				a[i][j] = a[i - 1][j] + a[i - 1][j - 1]; 
			}
		}
	}
	
	for(i = 0;i < n;i++){
		for(j = 0;j <= i;j++){
			cout<<a[i][j]<<" ";
		}
		cout<<endl;
	}
}
/**************************************************************
	Problem: 1275
	User: admin
	Language: C++
	Result: Accepted
	Time:11 ms
	Memory:2072 kb
****************************************************************/