問題 C 吃飯 完全揹包

2021-09-26 04:03:42 字數 1156 閱讀 7663

題目描述

桐桐放學了,在學校食堂吃起了飯….

這裡的飯十分好吃,但是桐桐的錢有限且肚子空間有限(^_^),雖然每種飯有無限多,但他只能吃部分,且每一種飯可增加一定的能量。桐桐覺得自己有點胖,於是下了乙個決心:我今天只吃第二多能量值的飯!

請你輸出他所吃的飯的能量值。

注意:第二多能量值的飯一定不等於最多能量值。

輸入共n+l行。

第1行三個數n,m,o,表示有n種食物供選擇(每種食物可以選無限次),桐桐帶了m元錢,肚子空間為o。

第2行到第n+l行,每行3個數ai,bi,ci,分別表示第i個食物需要花ai元錢,占用bi個肚子空間,而獲得ci個能量值。

輸出1行,為第二多的能量值,如果你沒有第二多,則輸出「error」。

複製樣例資料

10 7 3

4 1 133

1 2 420

4 1 98

5 3 762

7 3 91

5 1 746

2 2 910

4 1 655

2 2 271

5 3 286

樣例輸出

1565
提示

30%的資料滿足:l≤n≤10 1≤m,o≤10;

50%的資料滿足:l≤n≤100 l≤m,o≤100;

i00%的資料滿足:1≤n≤100 1≤m,o≤1000。

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define inf 0x3f3f3f3f

typedef long long ll;

using namespace std;

int m,n,o;

int dp[1010][1010],mi,mx;

int main()

else if(dp[i-x][j-y]+z>mi&&dp[i-x][j-y]+z0)

cout

cout<<"error"

}

C 完全揹包問題

完全揹包問題 有n種重量和價值分別為wi,vi的物品。從這些物品中挑選總重量不超過w的物品,求出挑選物品價值總和的最大值。在這裡,每種物品可以挑選任意多件。輸入格式 nw v w輸出格式 最大總價值 輸入 33 4 4 52 3 輸出 10解題思路 相對於01揹包,完全揹包一件物品可以挑選任意多件,...

揹包問題(完全揹包)

1.矩陣鏈乘法 2.投資組合問題 3.完全揹包問題 4.01揹包問題 5.最長公共子串行 乙個揹包,可以放入n種物品,物品j的重量和價值分別為,如果揹包的最大重量限制是b,怎麼樣選擇放入揹包的物品以使得揹包的總價值最大?組合優化問題,設表示裝入揹包的第j個物品的數量,解可以表示為。那麼目標函式和約束...

01揹包問題,完全揹包問題,多重揹包問題C 實現

基於 揹包問題九講 2.0 beta1.2 實現 參考 動態規劃之揹包問題系列 smon的文章 知乎 0 1揹包問題的動態規劃演算法 bat特白的文章 知乎 非常感謝各位的部落格解答,如果大家看完後有不理解的可以參考 也可以自己進行實現,這樣才能更深刻的理解。01揹包問題 int zeroonepa...