我不知道將去向何方,但我已在路上!
輸入:
[ [1,3,1],
[1,5,1],
[4,2,1]
]輸出: 7
解釋: 因為路徑 1→3→1→1→1 的總和最小。
class
solution
:def
minpathsum
(self, grid: list[list[
int]])
->
int:
dp =[[
0]*len
(grid[0]
)]*len
(grid)
for i in
range
(len
(grid)):
for j in
range
(len
(grid[0]
)):if i ==
0and j ==0:
dp[i]
[j]= grid[i]
[j]elif i ==
0and j >0:
dp[i]
[j]= dp[i]
[j-1
]+ grid[i]
[j]elif j ==
0and i >0:
dp[i]
[j]= dp[i-1]
[j]+ grid[i]
[j]if i >=
1and j >=1:
dp[i]
[j]=
min(dp[i]
[j-1
]+ grid[i]
[j],dp[i-1]
[j]+ grid[i]
[j])
return dp[-1
][-1
]# 執行用時 :132 ms, 在所有 python3 提交中擊敗了77.89%的使用者
# 記憶體消耗 :14.3 mb, 在所有 python3 提交中擊敗了89.01%的使用者
LeetCode刷題 64 最小路徑和
給定乙個包含非負整數的 m x n 網格,請找出一條從左上角到右下角的路徑,使得路徑上的數字總和為最小。說明 每次只能向下或者向右移動一步。示例 輸入 1,3,1 1,5,1 4,2,1 輸出 7 解釋 因為路徑 1 3 1 1 1 的總和最小 這個題目和120.三角形最小路徑和很像,解法是類似的。...
LeetCode刷題筆記 64 最小路徑和
給定乙個包含非負整數的 m x n 網格,請找出一條從左上角到右下角的路徑,使得路徑上的數字總和為最小。說明 每次只能向下或者向右移動一步。示例 輸入 1,3,1 1,5,1 4,2,1 輸出 7 解釋 因為路徑 1 3 1 1 1 的總和最小。更新矩陣中元素的值,使得每個網格中的值表示從左上角到該...
Leetcode刷題之括號
給定乙個只包括 的字串,判斷字串是否有效。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。示例 1 輸入 輸出 true 示例 2 輸入 輸出 true 示例 3 輸入 輸出 false 示例 4 輸入 輸出 false 示例 5 輸入 輸...