给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。
说明:每次只能向下或者向右移动一步。
示例:
输入:
[
[1,3,1],
[1,5,1],
[4,2,1]
]
输出: 7
解释: 因为路径 1→3→1→1→1 的总和最小。
第一次的代码:
想法是通过递归找到所有路径,把所有路径的长度加入count列表里,最后返回列表最小值
def mg(i,j,grid,count,ans):
if i== len(grid)-1 and j== len(grid[0])-1:
count.append(ans+grid[i][j])
return
if i<len(grid)-1:
mg(i+1,j,grid,count,ans+grid[i][j])
if j<len(grid[0])-