计算杨辉三角第六行

计算杨辉三角第六行

 

 

n = 6
triangle = [[1],[1,1]]

for i in range(2,n):
    current = [1]
    pre = triangle[i-1]
    for j in range(i-1):
        current.append(pre[j]+pre[j+1])
    current.append(1)
    triangle.append(current)

print(triangle)

n = 6
triangle = []

for i in range(n):
    current = [1]
    triangle.append(current)
    if i == 0:
        continue
    pre = triangle[i-1]
    for j in range(i-1):
       current.append(pre[j]+pre[j+1])
    current.append(1)
print(triangle)

 补零法:

n = 6
newline = [1]
print(newline)

for i in range(1,n):
    #oldline = newline.copy()
    oldline = newline[:] + [0]
    #newline.clear()
    newline = []

    for j in range(i+1):
        newline.append(oldline[j-1] + oldline[j])
    print(newline)
import copy
n = 6
newline = [1]
print(newline)

for i in range(1,n):
    oldline = newline.copy()
    oldline.append(0)
    newline = [0] * (i+1)

    for j in range(i+1):
        newline[j] = (oldline[j-1] + oldline[j])
    print(newline)

 

posted @ 2020-04-01 09:47  Alrenn  阅读(1023)  评论(0)    收藏  举报