資源描述:
《貪心算法實驗報告》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫。
1、為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃貪心算法實驗報告 第三次算法作業(yè) 姓名:吳迪 班級: 學(xué)號: 班內(nèi)序號15 摘要:本文為完成作業(yè)problem1,problem3,problem4,problem5的四道貪心算法題?! 渥ⅲ核泻缶Y為_ex的可執(zhí)行文件為文件輸入輸出模式的程序,比如problem1_ problem1 特殊的01背包 問題描述:01背包是在N件物品取出若干件放在空間為C的背包里,每件物品的體積為W1,W2??Wn,與之相對應(yīng)
2、的價值為P1,P2??Pn,并取得最大價值。普通的01背包中物品的重量和價值沒有明確的關(guān)系,這里定義一種特殊的01背包:向背包中放入的物品的價值和體積成反比,也就是價值越高,體積越小,注意這里物品價值和體積的乘積并不是固定值。例如:如下的物品滿足這 個“特殊的01背包”,5件物品: 物品1,價值v=6,體積w=20目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人
3、素質(zhì)的培訓(xùn)計劃 物品2,價值v=1,體積w=60 物品3,價值v=20,體積w=3 物品4,價值v=15,體積w=15 物品5,價值v=99,體積w=1 假如我有一個容量為c的背包,c=20,那么選擇物品3、4、5可以獲得最大價值134?! ≥斎耄菏紫仁且粋€整數(shù)t,代表測試數(shù)據(jù)的組數(shù)。每組測試數(shù)據(jù)首先是兩個正整數(shù)n和c,n代表物品的個數(shù),c代表背包的最大容積。然后有n行整數(shù),每行有兩個整數(shù),分別代表物品的價值v和體積w。t的范圍是(1-100),n的范圍是(1-),c、v、w的范圍不超過四字節(jié)的int型。 輸出:首先輸出測試數(shù)
4、據(jù)的組號,例如第一組的組號為“Case1:”,占一行。然后是一個整數(shù),代表可以取得的最大價值,占一行。 SampleInput: 5 520 620 160 203 1515 991目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 11 510 9217 10110 9318 1093 8726 1022 9613
5、 9618 8917 1061 7140 8627 8331 7831 1067 6846 1519 5455目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 1037 8233 7535 9910 9421 5356 9516 9120 3969 8228 5454 1102 4267 6546 S
6、ampleOutput: Case1: 134 Case2: Case3: 109 Case4: 212目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 Case5: 312 問題分析: 本題是特殊的01背包問題,由于其價值和重量的反比規(guī)律易證明貪婪算法的有效性,故本題可以采用貪心算法求解,即每次優(yōu)選最輕物品也是最大價值物品?! ?/p>
7、源代碼: #include #include usingnamespacestd; intgreedy_calculate(int*v,int*w,constintn,constintc); intmain() { //input intt;//testgroupnum1-100 intn;//objectnum1- intc;//capacity int*v; int*w; fstreamin;目的-通過該培訓(xùn)員工可對保安行業(yè)有初步了解,并感受到安保行業(yè)的發(fā)展的巨大潛力,可提升其的專業(yè)水平,并確保其在這個行業(yè)的
8、安全感。為了適應(yīng)公司新戰(zhàn)略的發(fā)展,保障停車場安保新項目的正常、順利開展,特制定安保從業(yè)人員的業(yè)務(wù)技能及個人素質(zhì)的培訓(xùn)計劃 fstreamout; ("problem1_",ios::in)