【ACM每日一练:杨辉三角形】

蓝桥杯练习系统:http://lx.lanqiao.cn/problemset.page?code=BASIC-&userid=509443

问题描述

杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。  
它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。  
下面给出了杨辉三角形的前4行:  
1 
1 1 
1 2 1  
1 3 3 1  
给出n,输出它的前n行
输入格式:
输入包含一个数n。
输出格式:
输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。
注意矩阵负数的索引
【ACM每日一练:杨辉三角形】_第1张图片

结果

【ACM每日一练:杨辉三角形】_第2张图片

代码

n=int(input())
A=[1]
for i in range(n):#打印第i行,0对应第一行
    print(" ".join(str(x) for x in A))#对杨辉三角形中每个数加空间
    A.append(0)#在末尾加0
    A=[A[j] + A[j-1] for j in range(len(A))]#下一行等于加0与未加0之和

你可能感兴趣的:(ACM,python,acm竞赛)