fork download
  1. def pascal_triangle(n: int):
  2. if n <= 0:
  3. return []
  4. result = []
  5. row = [1]
  6. for r in range(1, n+1):
  7. # r-th row (1-indexed) is 'row'
  8. result.append(row.copy())
  9. # build next row
  10. next_row = [1]
  11. for i in range(1, len(row)):
  12. next_row.append(row[i-1] + row[i])
  13. next_row.append(1)
  14. row = next_row
  15. return result
  16.  
  17. # Examples:
  18. # print(pascal_triangle(4)) -> [[1], [1,1], [1,2,1], [1,3,3,1]]
  19. # print(pascal_triangle(5)) -> [[1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]
  20.  
Success #stdin #stdout 0.08s 14064KB
stdin
Standard input is empty
stdout
Standard output is empty