由于一些转换,我正在编写一个获取下一系列数字的代码
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
行“1 4 6 4 1”是从上一行“1 3 3 1”得到的,如下:开始时总是1, 1+3=4, 3+3=6, 3+1=4,最后它总是1
这个想法是矩阵的前两个元素已经存在,循环从第一个元素开始,计算那里两个相邻元素的总和并将其写入第二个元素(我从零开始在矩阵中编号),我试图以某种方式实现它,但结果不是很好
table = [[1], [1, 1]]
n = int(input())
s = 0
for i in range(n - 2):
for row in table[i]:
s += sum(row)
table.append([s])
print(table)
在代码中修复什么以使其工作?
pascal_triangle
是一个无限帕斯卡三角行生成器。下一行是通过对前一行的相邻元素求和获得的。为此,请在上一行的左侧和右侧添加零:itertools.islice
- 修剪无限生成器的工具: