洛谷 P1541 烏龜棋題解

2021-10-25 07:45:27 字數 846 閱讀 1134

p1541 烏龜棋

解題思路:因為當前的狀態與我們用過的牌有關,所以用乙個四維陣列記錄當前已經用掉的牌數dp[a][b][c][d],這個狀態可以由上乙個狀態dp[a - 1][b][c][d]、dp[a][b - 1][c][d]、dp[a][b][c - 1][d]、dp[a][b][c][d - 1]轉移而來。所以我們可以列舉每種牌的數量,計算使用當前狀態的牌到達的位置即可。

for

(int a =

0; a <= f[1]

; a++)}

}}

**:

#include

using

namespace std;

const

int maxn =

1000

;int n, m;

int dp[50]

[50][

50][50

],num[maxn]

,f[maxn]

,temp;

intmain()

for(

int i =

1; i <= m; i++

) dp[0]

[0][

0][0

]= num[1]

;for

(int a =

0; a <= f[1]

; a++)}

}}cout << dp[f[1]

][f[2]

][f[3]

][f[4]

]<< endl;

return0;

}

洛谷 P1541 烏龜棋

題目背景 小明過生日的時候,爸爸送給他一副烏龜棋當作禮物。烏龜棋的棋盤是一行n個格仔,每個格仔上乙個分數 非負整數 棋盤第1格是唯一的起點,第n格是終點,遊戲要求玩家控制乙個烏龜棋子從起點出發走到終點。烏龜棋中m張爬行卡片,分成4種不同的型別 m張卡片中不一定包含所有4種型別的卡片,見樣例 每種型別...

洛谷P1541 烏龜棋

小明過生日的時候,爸爸送給他一副烏龜棋當作禮物。烏龜棋的棋盤是一行n個格仔,每個格仔上乙個分數 非負整數 棋盤第1格是唯一的起點,第n格是終點,遊戲要求玩家控制乙個烏龜棋子從起點出發走到終點。烏龜棋中m張爬行卡片,分成4種不同的型別 m張卡片中不一定包含所有4種型別的卡片,見樣例 每種型別的卡片上分...

洛谷P1541 烏龜棋

小明過生日的時候,爸爸送給他一副烏龜棋當作禮物。烏龜棋的棋盤是一行n個格仔,每個格仔上乙個分數 非負整數 棋盤第1格是唯一的起點,第n格是終點,遊戲要求玩家控制乙個烏龜棋子從起點出發走到終點。烏龜棋中m張爬行卡片,分成4種不同的型別 m張卡片中不一定包含所有4種型別的卡片,見樣例 每種型別的卡片上分...