【leetcode❤python】119. Pascal's Triangle II
#-*- coding: UTF-8 -*-
#杨辉三角返回给定行
#方法:自上而下考虑问题,从给定的一行计算出下一行,则给定行数之后,计算的最后一行就是求解的最后一行
class Solution(object):
def getRow(self, rowIndex):
"""
:type rowIndex: int
:rtype: List[int]
"""
#初始化杨辉三角前两行
ans=[[1],[1,1]]
#如果输入rowIndex小于2 表示的是前两行
if rowIndex<2:return ans[rowIndex]
#以初始化的杨辉三角为第一个一个pre=ans[-1]
pre=ans[-1]
#i表示的是从第一行开始计算一直计算到rowIndex-1行,i=1可以计算出i=2
for i in range(1,rowIndex):
print i, pre
# t 表示计算的是下一行元素的 除去首尾两个的其他元素值
nextT=[1]+[pre[t]+pre[t+1] for t in range(len(pre)-1)]+[1]
pre=nextT
return pre