三取方格數

2022-08-30 11:24:15 字數 2083 閱讀 3774

描述 description

設有n*n的方格圖,我們將其中的某些方格填入正整數,

而其他的方格中放入0。

某人從圖得左上角出發,可以向下走,也可以向右走,直到到達右下角。

在走過的路上,他取走了方格中的數。(取走後方格中數字變為0)

此人從左上角到右下角共走3次,試找出3條路徑,使得取得的數總和最大。

輸入格式 input format  

第一行:n   (4<=n<=20)

接下來乙個n*n的矩陣,矩陣中每個元素不超過10000,不小於0  

輸出格式 output format  

一行,表示最大的總和。

樣例輸入 sample input

樣例輸出 sample output

時間限制 time limitation

各個測試點1s

分析:f[i,j,k,l]:=max(f[i-1,j,k,l]),f[i-1,j-1,k,l],f[i-1,j-1,k-1,l],f[i-1,j-1,k,l-1],f[i-1,j-1,k-1,l-1],f[i-1,j,k-1,l],f[i-1,j,k-1,l-1],f[i-1,j,k,l-1]);

加格仔權值的時候注意不要重複加.

code:

1 function max(a,b:longint):longint; begin if a>b then exit(a) else exit(b); end;

2 function min(a,b:longint):longint; begin if a3var

4i,j,k,l,tt,n:longint;

5 a:array[0..21,0..21] of

longint;

6 f:array[0..42,0..21,0..21,0..21] of

longint;

7begin

8read(n);

9 for i:=1

to n do

10 for j:=1

to n do

11read(a[i,j]);

12 f[1,1,1,1]:=a[1,1

];13 for i:=1

to n shl 1-1

do14 for j:=1

to min(n,i) do

15 for k:=1

to min(n,i) do

16 for l:=1

to min(n,i) do

17begin

18 tt:=a[j,i-j+1

];19

if (j<>k) then inc(tt,a[k,i-k+1

]);20

if (j<>l) and (k<>l) then inc(tt,a[l,i-l+1

]);21 f[i,j,k,l]:=max(f[i-1,j-1,k,l],f[i-1

,j,k,l]);

22 f[i,j,k,l]:=max(f[i-1,j-1,k-1

,l],f[i,j,k,l]);

23 f[i,j,k,l]:=max(f[i-1,j-1,k,l-1

],f[i,j,k,l]);

24 f[i,j,k,l]:=max(f[i-1,j-1,k-1,l-1

],f[i,j,k,l]);

25 f[i,j,k,l]:=max(f[i-1,j,k-1

,l],f[i,j,k,l]);

26 f[i,j,k,l]:=max(f[i-1,j,k-1,l-1

],f[i,j,k,l]);

27 f[i,j,k,l]:=max(f[i-1,j,k,l-1

],f[i,j,k,l]);

28inc(f[i,j,k,l],tt);

29end;

30 writeln(f[n shl 1-1

,n,n,n]);

31 end.

三取方格數

時間限制 1 sec 記憶體限制 128 mb 設有n n的方格圖,我們將其中的某些方格填入正整數,而其他的方格中放入0。某人從圖得左上角出發,可以向下走,也可以向右走,直到到達右下角。在走過的路上,他取走了方格中的數。取走後方格中數字變為0 此人從左上角到右下角共走3次,試找出3條路徑,使得取得的...

TYVJ1414(三取方格數)

演算法 dp 與二取方格數類似,設f i,j,k,l 為走了i步 初始為1步 後,第1次取數在j行,第2次取數在k行,第3次取數在l行的最大值。然後就是類似的轉移,注意這裡一共有8種轉移情況,都要考慮到,設j為當前走到的行,加上j行的值,然後去判斷與k,l是否重複,不重複還要加上它們的值。走i步最多...

方格取數 1

problem description 給你乙個n n的格仔的棋盤,每個格仔裡面有乙個非負數。從中取出若干個數,使得任意的兩個數所在的格仔沒有公共邊,就是說所取的數所在的2個格仔不能相鄰,並且取出的數的和最大。input 包括多個測試例項,每個測試例項包括乙個整數n 和n n個非負數 n 20 ou...