hdu2546 01揹包 重學揹包

2021-06-17 21:15:20 字數 337 閱讀 1357

題意:給出菜的價錢和自己的餘額。使自己餘額最少,注意餘額大於5的情況可以買任意的菜。

思路:小於5的餘額不能買菜,直接輸出,大於五的餘額,留下5元買最貴的菜,剩下的餘額進行01揹包,將剩下的餘額減去01揹包消耗金額最大。就得出答案

**:

#include#includeusing namespace std;

int zeroonepack( int price,int money,int n ,int pos) //01揹包解法

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

return 0;

}

飯卡 HDU 2546(01揹包)

電子科大本部食堂的飯卡有一種很詭異的設計,即在購買之前判斷餘額。如果購買乙個商品之前,卡上的剩餘金額大於或等於5元,就一定可以購買成功 即使購買後卡上餘額為負 否則無法購買 即使金額足夠 所以大家都希望盡量使卡上的餘額最少。某天,食堂中有n種菜 每種菜可購買一次。已知每種菜的 以及卡上的餘額,問最少...

hdu2546 01揹包理解

電子科大本部食堂的飯卡有一種很詭異的設計,即在購買之前判斷餘額。如果購買乙個商品之前,卡上的剩餘金額大於或等於5元,就一定可以購買成功 即使購買後卡上餘額為負 否則無法購買 即使金額足夠 所以大家都希望盡量使卡上的餘額最少。某天,食堂中有n種菜 每種菜可購買一次。已知每種菜的 以及卡上的餘額,問最少...

飯卡 hdu2546(01揹包)

這是乙個變形的01揹包問題,首先如果金額小於5元,剩餘金額不變,為已有金額。如果大於等於5元我們先用5元買最貴的菜。然後用剩下的錢買其他的菜這時就是乙個典型的01揹包問題了 求出最大的花費,然後用總金額減去最大的花費即為剩餘金額。include include include include usi...