分數揹包與01揹包問題不同點就是如果某物品無法被全部放入可以放入一部分
思路還是降序排列然後往揹包新增
題目:
有 m 元錢,n 種物品;每種物品有 j 磅,總價值 f 元,
可以使用 0 到 f 的任意**購買相應磅的物品,例如使用 0.3f 元,
可以購買 0.3j 磅物品。要求輸出用 m 元錢最多能買到多少磅物品。
輸入樣例
3 5 //物品數量n 揹包承重
7 2 //價值 重量
4 3
5 2
/* 分數揹包問題
* */
public
class 分數揹包
cmp cmp=new cmp();
arrays.sort(goods,cmp);// 使各物品按照價效比降序排列
intindex=0;//當前貨物下標
double ans=0;//累加所能得到的總重量
while(m>0&&index
//迴圈條件為,既有物品剩餘(index0)時繼續迴圈
if(m>goods[index].f) else
index++;//繼續下乙個物品
}system.out.printf("%.3f\n",ans);
}}class
cmpimplements
comparator
}class
good
0 1揹包 分數揹包
題目出自北航oj 時間限制 2000ms 記憶體限制 65536kb 朋友,你渴望力量嗎?不渴望謝謝。那朋友,你想要濃密的頭髮嗎?想。bamboo停下腳步望了望角落裡的巫師 你這不是變小藥嗎?還是盜版?喂,是110嗎?巫師趕緊解釋 不是,你仔細看,我這巴拉拉魔髮藥水是膠體形態的 汲取魔仙堡的時光泉水...
揹包問題 01揹包 完全揹包 多重揹包
01揹包和完全揹包的區別 01揹包的侷限在於每樣物品只有一種,每個物品都有乙個屬於自己的價值和重量,在給定的物品中選出揹包所能容納的最大重量,要求是價值最大 完全揹包與01揹包的不同在於完全揹包不限制每樣物品的個數,物品的價值和質量都與01揹包一樣,也同樣是求在給定大小的容量中,找出最大價值的選擇 ...
揹包問題(01揹包,完全揹包,多重揹包)
揹包問題 01揹包,完全揹包,多重揹包 近日為以下瑣事煩身 差不多要向學院提交專案申請了,本來是想做個多模式的im系統的,可是跟往屆通過審核的專案比起來,缺乏創新和研究價值,所以在文件上要多做手腳,花點心思。揹包問題,經典有揹包九講。不死族的巫妖王發工資拉,死亡騎士拿到一張n元的鈔票 記住,只有一張...