杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。
它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。
输入包含一个数n。
输出格式输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。
样例输入4
样例输出 1
1 1
1 2 1
1 3 3 1
n=int(input())nums=[[0]*n for i in range(n)] #初始化一个n*n的零矩阵for i in range(n): for j in range(n): #该矩阵不超过n行n列 if j==0 or j==i: nums[i][j]=1 #每行的行首行末赋值为1 else: nums[i][j]=nums[i-1][j-1]+nums[i-1][j] #两肩上数的求和 if nums[i][j]!=0: #剔除为0的项 print(nums[i][j],end=' ') print() #要在每行换行,故换行对准i层循环
print()是有一个默认的end参数,前面的print给了一个空格,就把默认的换行符替换了,故最后的print()中参数为空。