在乙個m*n
的棋盤的每一格都放有乙個禮物,每個禮物都有一定的價值(價值大於0
)。你可以從棋盤的左上角開始拿格仔裡的禮物,並每次向右或者向下移動一格、直到到達棋盤的右下角。給定乙個棋盤及其上面的禮物的價值,請計算你最多能拿到多少價值的禮物?
示例 1:
輸入:[[1,3,1],這應該是和青蛙爬樓梯那題一樣,最最經典的[1,5,1],
[4,2,1]
]輸出:12
解釋:路徑 1→3→5→2→1 可以拿到最多價值的禮物
動態規劃
題目了。
動態規劃
狀態表示:dp[i][j]
表示走到第i個格仔時能拿到禮物的最大價值,則dp[m-1][n-1]
就是走到右下角最後乙個格仔時能拿到的禮物的最大價值。
狀態轉移:只能往右或者往下走,也就是到達(i,j)
位置只能從上面下來,或者從左邊過來,則我們不難得出dp[i][j] = math.max(dp[i - 1][j] ,dp[i][j - 1]) + grid[i][j];
47 禮物的最大價值
在乙個 m n 的棋盤中的每乙個格都放乙個禮物,每個禮物都有一定的價值 價值大於0 你可以從棋盤的左上角開始拿各種裡的禮物,並每次向由或者向下移動一格,直到到達棋盤的右下角。給定乙個棋盤及上面個的禮物,請計算你最多能拿走多少價值的禮物?可以通過動態規劃的思想實現。定義陣列a,a i j 表示到達 i...
47 禮物的最大價值 python
題目 在乙個m n的棋盤的每一格都放有乙個禮物,每個禮物都有一定的價值 價值大於0 你可以從棋盤的左上角開始拿格仔裡的禮物,並每次向右或者向下移動一格,直到到達棋盤的右下角。給定乙個棋盤及其上面的禮物,請計算你最多能拿到多少價值的禮物?def get max value m n rows len m...
劍指 47 禮物的最大價值
1 禮物的最大價值 在乙個 m n 的棋盤的每一格都放有乙個禮物,每個禮物都有一定的價值 價值大於 0 你可以從棋盤的左上角開始拿格仔裡的禮物,並每次向右或者向下移動一格 直到到達棋盤的右下角。給定乙個棋盤及其上面的禮物的價值,請計算你最多能拿到多少價值的禮物?力扣鏈結 思路 動態規劃 狀態表示 d...