P1006 傳紙條 P1004 方格取數 (DP)

2021-10-07 22:39:24 字數 1381 閱讀 5748

一、p1006 傳紙條

題目鏈結

題面:

題解:等價於找兩條從左上角到右下角的不相交的路線,使得和最大。

我們設dp [ k ] [ i ] [ j ] k為 橫座標加縱座標的和, i 為左邊那條路徑的縱座標,j 為右邊那條路徑的縱座標 。

**:

#include

#include

#include

#include

#include

#include

#include

#define ll long long

#define llu unsigned ll

using

namespace std;

int dp[

210]

[110][

110]

;int a[

110]

[110];

intmain

(void)}

}printf

("%d\n"

,dp[n+m-1]

[m-1

][m]);

return0;

}

二、p1004 方格取數題目鏈結

題面:

題解:因為方格中的數都是非負整數,不重複走乙個方格一定比重複走乙個方格更優。

所以問題等價於從左上角到右下角找兩天不相交的路徑,使得和最大。

**:

#include

#include

#include

#include

#include

#include

#include

#define ll long long

#define llu unsigned ll

using

namespace std;

int dp[

210]

[110][

110]

;int a[

110]

[110];

intmain

(void)}

}printf

("%d\n"

,dp[n+m-1]

[m-1

][m]

+a[1][

1]+a[n]

[m])

;return0;

}

洛谷P1004 方格取數 P1006 傳紙條

p1004 方格取數 p1006 傳紙條 方格取數 設f i,j,k,l 為從原點分別走兩條路徑分別到 i,j k,l 所取得的和。狀態轉移方程 f i j k l max a i j a k l 若 i,j k,l 不是同點 若 i,j k,l 為同點,f i j k l max a i j 遞推...

P1004 方格取數

這題有兩種做法。第一種是同時考慮兩個點,也就是用4個迴圈。列舉每個點的位置,並計算總分。f i j k l max f i j k l f i 1 j k 1 l f i j 1 k l 1 f i 1 j k l 1 f i j 1 k 1 l a i j a k l 當 i k j l 時,多算...

P1004 方格取數

題目描述 設有n n的方格圖 n 9 我們將其中的某些方格中填入正整數,而其他的方格中則放入數字0。如下圖所示 見樣例 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...