Pascal's Triangle帕斯卡三角

Easy

给定值numRows, 返回帕斯卡三角的前numRows行。

Example, given numRows = 5,
Return
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]

帕斯卡三角的下行可由上行错位相加得来。比如[1,3,3,1]=[0,1,2,1]+[1,2,1,0],下面代码借鉴其他coder的答案。使用了map使代码十分简洁。

class Solution(object):
    def generate(self, numRows):
        """
        :type numRows: int
        :rtype: List[List[int]]
        """
        res = [[1]]
        for i in range(1,numRows):
            res += [map(lambda x,y:x+y, [0] + res[-1], res[-1]+[0])]
        return res[:numRows]

你可能感兴趣的:(Pascal's Triangle帕斯卡三角)