LeetCode 118 - Pascal's Triangle Problem

Problem Statement

Given a non-negative integer numRows, generate the first numRows of Pascal's triangle.


In Pascal's triangle, each number is the sum of the two numbers directly above it.

Example:

Input: 5
Output:
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

Solution:

class Solution: def generate(self, numRows: int) -> List[List[int]]: if not numRows: return [] triangle = [[1]] for i in range(1, numRows): previous = triangle[i-1] row = [1] for j in range(1, i): row.append(previous[j-1]+previous[j]) row.append(1) triangle.append(row) return triangle