採仙草 01揹包

2021-09-21 17:55:21 字數 779 閱讀 7504

adrian想挖一些仙草。仙人告訴他,前方有一塊草場可以採集仙草,這些仙草的價值和採集所用時間會有不同。adrian不想浪費這次挖仙草的機會,當然希望能挖到仙草的總價值最大,請你幫adrian計算一下在一定的時間t內能挖到的仙草價值總和最大值。

input

輸入第一行有兩個整數t和n由乙個空格分隔,其中t表示總共用以採藥的時間,n表示草場共有n棵仙草。接下來有n行,每行是兩個整數t和v由乙個空格分隔,表示各棵仙草採集所需要的時間和仙草的價值

1≤t≤1000

1≤n≤10

1≤t,v≤100

output

輸出只有一行,乙個整數,表示在時間t內adrian可以採到仙草的最大總價值。

sample input

70 3

71 100

69 1

1 2sample output

3思路

簡單01揹包

#include

#include

using namespace std;

struct herbherbs[20]

;int dp[

10001];

intmain()

for(

int i=

0;i) cout << dp[t]

<< endl;

}

揹包 01揹包

01揹包 有n種物品與承重為m的揹包。每種物品只有一件,每個物品都有對應的重量weight i 與價值value i 求解如何裝包使得價值最大。dp i,v 表示前i個物體 包括第i個 面對容量為v的揹包的最大價值,c i 代表物體i的重量,w i 代表物體i的價值 如果第i個物體不放入揹包,則揹包...

揹包專題 01揹包

暑假集訓開始了,按照隊裡的分配,我是弄dp的,嘛,於是我又一次的開始了從01揹包開始學習,昨天將杭電的幾道01揹包重新做了一遍,下面講講我自己對於01揹包的理解。首先01揹包題目的雛形是 有n件物品和乙個容量為v的揹包。第i件物品的費用是c i 價值是w i 求解將哪些物品裝入揹包可使價值總和最大。...

01揹包,完全揹包

動態規劃 動態規劃的核心是狀態以及狀態轉移方程。需要定義乙個 i,j 狀態以及該狀態的指標函式d i,j 01揹包 有n種物品,每種只有乙個,第i件物品的體積為vi質量為wi。選一些物品裝到體積為c的揹包中,使其體積不超過c的前提下重量最大。namevw abcd e 子問題定義 dp i j 表示...