洛谷動態規劃訓練總結 開心的金明 系列

2021-09-27 09:14:19 字數 642 閱讀 5007

對於選定若干種物品,然後要求從裡面選出特定種物品,使得價值最大的問題。這種金明問題有兩種:

型別1一種是每個物品可以選1次,選了就沒有了,此時令dp[i][j]表示可以選擇前i種,並且選完之後恰好花費j元。此時dp[i][j]的劃分為

d[i][j]=

型別2每種物品可以任意選取多次,此時令dp[i][j]表示可以選擇前i種,並且選完之後恰好花費j元。(也就是和前面定義相同)

此時dp[i][j]的劃分為

dp[i][j]=

此時**會變成如下所示

int main() 

dp[0] = 0;

memset(dp, 0, sizeof(dp));

int tempmax=0;

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

} }cout << dp[n];

return 0;

}

對於動態規劃的查表方法dp[i][j],可以發現,對於i和j在不同題目中會有不同的要注意的點,以本題為例

對於j,要注意到是恰好花完j元,因此正常來說要遍歷第i行的元素的。

對於i,要注意到餘下的錢是可以買i種還是可以買i-1種

開心的金明 動態規劃 洛谷

金明今天很開心,家裡購置的新房就要領鑰匙了,新房裡有一間他自己專用的很寬敞的房間。更讓他高興的是,媽媽昨天對他說 你的房間需要購買哪些物品,怎麼布置,你說了算,只要不超過n元錢就行 今天一早金明就開始做預算,但是他想買的東西太多了,肯定會超過媽媽限定的n元。於是,他把每件物品規定了乙個重要度,分為5...

開心的金明(洛谷)

問題描述 金明今天很開心,家裡購置的新房就要領鑰匙了,新房裡有一間他自己專用的很寬敞的房間。更讓他高興的是,媽媽昨天對他說 你的房間需要購買哪些物品,怎麼布置,你說了算,只要不超過 n 元錢就行 今天一早金明就開始做預算,但是他想買的東西太多了,肯定會超過媽媽限定的 n 元。於是,他把每件物品規定了...

洛谷 P1060 開心的金明(動態規劃)

金明今天很開心,家裡購置的新房就要領鑰匙了,新房裡有一間他自己專用的很寬敞的房間。更讓他高興的是,媽媽昨天對他說 你的房間需要購買哪些物品,怎麼布置,你說了算,只要不超過nn元錢就行 今天一早金明就開始做預算,但是他想買的東西太多了,肯定會超過媽媽限定的nn元。於是,他把每件物品規定了乙個重要度,分...