题目描述: 还记得中学时候学过的杨辉三角吗?具体的定义这里不再描述,你可以参考以下的图形:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
…………..
先在给你一个正整数n,请你输出杨辉三角的前n层
注意:层数从1开始计数,每层数字之间用一个空格隔开,行尾不要有空格。
如n=2,则输出:
1
1 1
示例:
输入:n = 2 输出: 1 1 1
分析:
杨辉三角,很经典的一个东西。 题目里面是描述不清晰,导致无法判断,所以,我这里把它的格式排版改了一下,应该就好做很多了。
代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
yh = [[0],[1]]
for iii in range(2, n+1):
new_yh = [1]
for i in range(1, iii-1):
new_yh.append(yh[iii-1][i-1] + yh[iii-1][i])
new_yh.append(1)
yh.append(new_yh)
ans = []
for item in yh[1:]:
ans = item
ans = [str(i) for i in ans]
print(" ".join(ans))