合縱連橫系列之揹包的開始

2021-06-18 14:39:06 字數 1255 閱讀 9509

其實這不算乙個黃道吉日,乙個真俗稱的「大蝦」的人物開始了漫長的揹包生活。在往日的數學世界裡,一段引理、一句定理、一撮例子、一捲練習,就如口嚼核桃一般,說不出的痛楚。那麼大蝦這個人就可以用乙個引理開始:人生的最優解就是通過每一天最優解來達到,因此有了貪心是人一生的追求;比如大蝦是乙個賊,只帶了乙個大包,去偷珠寶店,那麼他的希望是什麼呢?用最少的資源帶走最有價值的東東們,只可惜慌忙之中也不知道哪些該放棄哪些該拿下。我們又何嘗不是,在遇到真正需要抉擇的時候卻猶豫不絕,那麼或許有方法可以破這個局。

大蝦順利逃過這次「竊劫」,回到家裡做了一件大事:首先把所偷東西按照體積大小排列一遍,再按照價值大小排列一遍,然後用價值所在的名次減去體積所在的名次,列了這樣一張表,他心想如果某個珠寶所算負的越大越是值錢的。但是不管怎麼算,結果都是0,他在苦思冥想,難道總的來說都是這次偷竊的好壞各半?最終自我安慰的說,事前沒有調查珠寶店的均值,而且掰著手指頭算了算,幸運的是這次還是負數的多一些,隨手還是佔了便宜。

固步自封最後只能在0的世界裡。必須得「出」!!!

#include #include #include #define num 10

void sort(int *val, int *index, int num)

for (i = 0; i < num - 1; i++)

}for (i = k = 0; i < num; i++)

}for (i = 0; i < num; i++)

printf("x[%d] = %d index[%d] = %d\n", i, x[i], i, index[i]);

}int main()

// 回家排序

sort(value, index, num);

// 此時i=0是價值最大的珠寶,計算差值,並計算和

對了,破的方法正是張儀的合縱連橫。大蝦拿著筆發呆或者思考一番,看著這個圖,這不正是一張圖嘛,當然圖中畫的是乙個簡單的圖。現在缺少的只是權值,權值乃為謀啊。難道中國目前正在追趕美國,若以秦為起點,齊為終點,便就是秦到齊的單源最短路徑?那麼該如何定義這張圖呢?下期再見。

合縱連橫系列之小偷的創業

大蝦這個賊,輾轉反側,思前想後能否在正義的光環下實現報國夢想。愛好不多,唯有電腦的大蝦,發揮著計算機專業性的異想天開,在廁紙上畫出了初步方案 乙個不要功能特別豐富的智慧型電視,乙個功能強大的box,一台電腦,一部手機,一些感測器 大蝦猛地從床上站起來,打 給網上認識的女朋友小魚,激動的說了這些東西,...

NYOJ1022合縱連橫(支援刪除操作的並查集)

時間限制 1000 ms 記憶體限制 65535 kb 難度 3 描述 亂世天下,諸侯割據。每個諸侯王都有一片自己的領土。但是不是所有的諸侯王都是安分守己的,實力強大的諸侯國會設法吞併那些實力弱的,讓自己的領土面積不斷擴大。而實力弱的諸侯王為了不讓自己的領土被吞併,他會聯合一些其他同樣弱小的諸侯國,...

動態規劃系列之揹包問題

揹包問題是一類經典問題,經典的揹包九講 推薦部落格。主要有0 1揹包 完全揹包 分組揹包 多重揹包。0 1揹包問題主要場景如下 有n件物品和乙個容量為v的揹包。第i件物品的費用是c i,價值是w i。求解將哪些物品裝入揹包可使這些物品的費用總和不超過揹包容量,且價值總和最大。276.柵欄塗色leet...