交作业
Topic source机智!!!
原理就是将第n行分成两个只有n-1个数之后,再逐项相加 例: [1, 3, 3, 1]被分成 [1, 3, 3] 和 [3, 3, 1] 之后逐项相加得 [4, 6, 4] 就是下一行中间的部分
def triangles():
l = [1]
yield l
while True:
l = [1] + [l[i] + l[i + 1] for i in range(len(l) - 1)] + [1]
yield l
n = 0
for t in triangles():
print t
n = n + 1
if n == 15:
break
你这个算法牛B啊。
- 1
钿finger木木彡