package com.example.lettcode.offer;
/** * @class maxvalue
* @description 劍指offer47 禮物的最大價值
* 在乙個 m*n 的棋盤的每一格都放有乙個禮物,每個禮物都有一定的價值(價值大於 0)。
* 你可以從棋盤的左上角開始拿格仔裡的禮物,並每次向右或者向下移動一格、
* 直到到達棋盤的右下角。給定乙個棋盤及其上面的禮物的價值,請計算你最多能拿到多少價值的禮物?
* * 示例 1:
* 輸入:
* [* [1,3,1],
* [1,5,1],
* [4,2,1]
* ]* 輸出: 12
* 解釋: 路徑 1→3→5→2→1 可以拿到最多價值的禮物
* 0 < grid.length <= 200
* 0 < grid[0].length <= 200
* @author
* @date 2020/7/18
**/public class maxvalue
/**
* 動態規劃
*/public static int maxvalue(int grid)
} return dp[row][col];
}
/**
* 動態規劃:利用滾動陣列優化空間
*/public static int maxvalue(int grid)
} return dp[col];
}
// 測試用例
public static void main(string args) ,,};
int ans = maxvalue(grid);
system.out.println("maxvalue demo01 result:" + ans);
}
劍指offer 47 禮物的最大價值
題目描述 在乙個 m n 的棋盤的每乙個格都放有乙個禮物,每個禮物都有一定價值 大於 0 從左上角開始拿禮物,每次向右或向下移動一格,直到右下角結束。給定乙個棋盤,求拿到禮物的最大價值。例如,對於如下棋盤 1 10 3 8 12 2 9 6 5 7 4 11 3 7 16 5 禮物的最大價值為 1 ...
劍指offer 47 禮物的最大價值
在乙個m x n的棋盤的每乙個字都放有乙個禮物,每個禮物都有一定的價值 價值大於0 可以從棋盤的左上角開始拿格仔裡的禮物,並每次向左或向下移動一格,直到到達棋盤的右下角。給定乙個棋盤及棋盤上面的禮物,計算出最多能拿到多少價值的禮物。首先定義乙個函式f i,j 表示到達座標為 i,j 時能拿到禮物的總...
劍指offer47 禮物的最大價值
題目描述 在乙個 m n 的棋盤的每乙個格都放有乙個禮物,每個禮物都有一定價值 大於 0 從左上角開始拿禮物,每次向右或向下移動一格,直到右下角結束。給定乙個棋盤,求拿到禮物的最大價值。例如,對於如下棋盤 1 10 3 8 12 2 9 6 5 7 4 11 3 7 16 5 思路 動態規劃 狀態d...