問題描述
設有 n \times nn×n 的方格圖 (n \le 9)(n≤9),我們將其中的某些方格中填入正整數,而其他的方格中則放入數字 00。如下圖所示(見樣例):
a0 0 0 0 0 0 0 0
0 0 13 0 0 6 0 0
0 0 0 0 7 0 0 0
0 0 0 14 0 0 0 0
0 21 0 0 0 4 0 0
0 0 15 0 0 0 0 0
0 14 0 0 0 0 0 0
0 0 0 0 0 0 0 0
b某人從圖的左上角的 aa 點出發,可以向下行走,也可以向右走,直到到達右下角的 bb 點。在走過的路上,他可以取走方格中的數(取走後的方格中將變為數字 00)。
此人從 aa 點到 bb 點共走兩次,試找出 22 條這樣的路徑,使得取得的數之和為最大。
輸入格式
輸入的第一行為乙個整數 nn(表示 n \times nn×n 的方格圖),接下來的每行有三個整數,前兩個表示位置,第三個數為該位置上所放的數。一行單獨的 00 表示輸入結束。
輸出格式
只需輸出乙個整數,表示 22 條路徑上取得的最大的和。
輸入:8
2 3 13
2 6 6
3 5 7
4 4 14
5 2 21
5 6 4
6 3 15
7 2 14
0 0 0
輸出:67
**此**
**如下
#include
using
namespace std;
int arr[10]
[10]=
;int dp[10]
[10][
10][10
]=;int
main()
}}} cout << dp[n]
[n][n]
[n]<< endl;
return0;
}
動態規劃 RQNOJ 方格取數
設有n n的方格圖 n 10,我們將其中的某些方格中填入正整數,而其他的方格中則放入數字0。如下圖所示 見樣例 某人從圖的左上角的a 點出發,可以向下行走,也可以向右走,直到到達右下角的b點。在走過的路上,他可以取走方格中的數 取走後的方格中將變為數字0 此人從a點到b 點共走兩次,試找出2條這樣的...
棋盤型動態規劃 方格取數
題意 有n n的方格圖 n 10,我們將其中的某些方格中填入正整數,而其他的方格中則放入數字0。如下圖所示 見樣例 某人從圖的左上角的a 點出發,可以向下行走,也可以向右走,直到到達右下角的b點。在走過的路上,他可以取走方格中的數 取走後的方格中將變為數字0 此人從a點到b 點共走兩次,試找出2條這...
動態規劃解方格取數問題
設有 n n的方格圖 n 9 我們將其中的某些方格中填入正整數,而其他的方格中則放入數字 0。如下圖所示 見樣例 a 00 0000 0000 13006 0000 0070 0000 01400 00021 0004 0000 15000 00014 0000 0000 0000 00b某人從圖的...