SSL 1010 方格取數

2021-07-30 23:08:07 字數 1076 閱讀 7853

2023年分割槽聯賽提高組之四 方格取數

time limit:50000ms memory limit:65536k

total submit:198 accepted:112

description

設有n*n的方格圖(n<=10,我們將其中的某些方格中填入正整數,而其他的方格中則放入數字0。如下圖所示(見樣例):

某人從圖的左上角的a 點出發,可以向下行走,也可以向右走,直到到達右下角的b點。在走過的路上,他可以取走方格中的數(取走後的方格中將變為數字0)。

此人從a點到b 點共走兩次,試找出2條這樣的路徑,使得取得的數之和為最大。

input

輸入的第一行為乙個整數n(表示n*n的方格圖),接下來的每行有三個整數,前兩個表示位置,第三個數為該位置上所放的數。一行單獨的0表示輸入結束。

output

只需輸出乙個整數,表示2條路徑上取得的最大的和。

sample input

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

sample output

設f[i][j][h][k]為第一條路徑走到i,j;第二條路徑走h,k。

列舉八種情況,取最大值

**如下:

#include

#include

int a[51][51];

int sum[51][51][51][51];

int n,i,j,h,k,x,y,z;

using namespace std;

int main()

for(i=1;i<=n;i++)

for(j=1;j<=n;j++)

for(h=1;h<=n;h++)

for(k=1;k<=n;k++)

}printf("%d",sum[n][n][n][n]);

return

0;}

SSL 1010 方格取數

description 設有n n的方格圖 n 10,我們將其中的某些方格中填入正整數,而其他的方格中則放入數字0。如下圖所示 見樣例 某人從圖的左上角的a 點出發,可以向下行走,也可以向右走,直到到達右下角的b點。在走過的路上,他可以取走方格中的數 取走後的方格中將變為數字0 此人從a點到b 點共...

1277 方格取數

設有n n的方格圖,我們在其中的某些方格中填入正整數,而其它的方格中則放入數字0。如下圖所示 某人從圖中的左上角a出發,可以向下行走,也可以向右行走,直到到達右下角的b點。在走過的路上,他可以取走方格中的數 取走後的方格中將變為數字0 此人從a點到b點共走了兩次,試找出兩條這樣的路徑,使得取得的數字...

DP ssl 1010 方格取數(多執行緒DP)

設有n n的方格圖 n 10,我們將其中的某些方格中填入正整數,而其他的方格中則放入數字0。如下圖所示 見樣例 某人從圖的左上角的a 點出發,可以向下行走,也可以向右走,直到到達右下角的b點。在走過的路上,他可以取走方格中的數 取走後的方格中將變為數字0 此人從a點到b 點共走兩次,試找出2條這樣的...