22 lines
705 B
Python
22 lines
705 B
Python
|
class Solution:
|
||
|
def minPathSum(self, grid: List[List[int]]) -> int:
|
||
|
r = []
|
||
|
for i in range(len(grid)):
|
||
|
r.append([])
|
||
|
for i , l in enumerate(grid):
|
||
|
for j, num in enumerate(l):
|
||
|
if i == 0 and j == 0:
|
||
|
r[i].append(num)
|
||
|
continue
|
||
|
if i == 0:
|
||
|
r[i].append(num + r[i][j - 1])
|
||
|
continue
|
||
|
if j == 0:
|
||
|
r[i].append(num + r[i - 1][0])
|
||
|
continue
|
||
|
r[i].append(min(r[i - 1][j], r[i][j - 1]) + num)
|
||
|
width = len(grid[0])
|
||
|
height = len(grid)
|
||
|
return r[height - 1][width - 1]
|
||
|
|