小p非常喜歡玩dota,不分晝夜的玩
,結果他連做夢也都是裡面的畫面,一天晚上小p剛躺下就做了乙個神奇的夢。。。
不死族的巫妖王發工資拉,死亡騎士拿到一張n元的鈔票(記住,只有一張鈔票),為了防止自己在戰鬥中頻繁的死掉,他決定給自己買一些道具,於是他來到了地精商店前.
死亡騎士:"我要買道具!"
地精商人:"我們這裡有三種道具,血瓶150塊乙個,魔法藥200塊乙個,無敵藥水350塊乙個."
死亡騎士:"好的,給我乙個血瓶."
說完他掏出那張n元的大鈔遞給地精商人.
地精商人:"我忘了提醒你了,我們這裡沒有找客人錢的習慣的,多的錢我們都當小費收了的,嘿嘿."
死亡騎士:"......"
死亡騎士想,與其把錢當小費送個他還不如自己多買一點道具,反正以後都要買的,早點買了放在家裡也好,但是要盡量少讓他賺小費.
現在死亡騎士感覺自己的智商不夠用所以希望小p幫他計算一下,最少他要給地精商人多少小費.但是小p的智商可是出了名的「不忍直視」啊,聰明非凡的你所以你能幫幫他嗎?
輸入資料的第一行是乙個整數t(1<=t<=100),代表測試資料的數量.然後是t行測試資料,每個測試資料只包含乙個正整數n(1<=n<=10000),n代表死亡騎士手中鈔票的面值.
注意:地精商店只有題中描述的三種道具.
對於每組測試資料,請你輸出死亡騎士最少要浪費多少錢給地精商人作為小費.
2380
200
300這題,做的複雜一點的話是乙個完全揹包問題= =不過無意中在某大神的部落格裡發現了一種更簡便的方法,嘿嘿~兩種方法都寫了一遍~具體內容見**~
//投機取巧的方法^ ^#include using namespace std;
int main()
; for(i=0;i<3;i++)//i為物品種類}}
cin>>t;
while(t--)
{cin>>n;
cout<
(學軍集訓)揹包
有 n nn 種物品,第 i ii 種物品有 c ic i ci 個,體積為 v iv i vi 給定整數集合 s ss,從這 n nn 種物品中選出 k k s k k s k k s 種物品,每種物品選任意正整數 個,問可以得到哪些小於 l ll 的總體積值 對於所有的資料,滿足 1 n ci,...
HZNU ACM寒假集訓Day7小結 揹包DP
揹包問題 01揹包 狀態 f i,j 表示只能裝前i個物品的情況下,容量為j的揹包所能達到的最大總價值 狀態轉移方程 f i,j max f i 1,j f i 1,j w i v i 核心 滾動陣列 由於我們使用一維陣列儲存,則在求兩個子問題時沒有直接取出那麼方便了,因為第i次迴圈可能覆蓋第i 1...
ACM寒假集訓第二天 揹包九講
揹包 01揹包優化 完全揹包 多重揹包 01揹包 zeroonepack 有total件物品和乙個容量為weight的揹包。每種物品均只有一件 第i件物品的費用是w i 價值是v i 求解將哪些物品裝入揹包可使價值總和最大。完全揹包 completepack 有total種物品和乙個容量為weigh...