POJ 2976 二分搜尋 最大化平均值

2022-05-02 22:09:09 字數 970 閱讀 2106

傳送門

[1] : poj 2976 dropping tests 題解 《挑戰程式設計競賽》

[2] : poj 2976 3111(二分-最大化平均值)

有 n 們課程,第 i 門課程的得分和總分分別為 ai 和 bi;

讓你從中選出 n-k 門課程,使得 $100\cdot \frac^a_i}^b_i}$ 最大;

結果要求四捨五入;

二分答案;

對於某一答案 x,判斷是否可以選出 n-k 門課程,使得 $100\cdot \frac^a_i}^b_i} \ge x$ 成立;

上述式子可以進一步轉化一下:

$\begin 100\cdot \frac^a_i}^b_i} \ge x \ &\leftrightarrow \frac^a_i}^b_i} \ge \frac\\ &\leftrightarrow \sum_^a_i \ge \frac\cdot \sum_^b_i 

\\ &\leftrightarrow \sum_^(a_i\ -\ \frac\cdot b_i) \ge 0\end$

那麼,我們只需每次按照 $a_i\ -\  \frac\cdot b_i$ 排序取前 n-k 大並判斷 x 是為否可行解即可;

poj2976.cpp

太晚了,身心疲憊,如果明天有空的話,再寫上自己對於此題的理解吧,真是個充實愉快的一天啊。

對了,今天是我們學校70周年校慶,校慶再圖書館前的廣場舉行,聲音震天響;

聽著外面的熱鬧聲,在和我乙個人奮鬥相對比,心中難免有些沒落,自己選擇的acm,再苦再難也要扛著。

莫名地想到,下乙個校慶,我會以何種身份出現在學校呢?

2018.10.17  21:54

POJ2976二分搜尋解決平均值最大化問題

一道最大化平均值的問題 輸出是100 平均值的最大值並且取其中最接近的整數 由於貪心演算法不行只能二分查詢法了 同時由於是lb和ub過於小所以迴圈100次就行了接近精度10 30次方 164k282ms include include using namespace std define max n...

poj2976 二分 01分數規劃

題意 給出 n 1 1000 k 0 1000000000 代表有 n 個科目的成績,每個科目成績都有 a,b 兩種成績,後給出 n 個 a 和 n 個 b 的成績。現要使 y 達到最大,當去除 k 個科目的成績之後,y 最大能取到多大。思路 二分搜尋。y 所以100 sigema a y sige...

POJ 3111(二分,最大化平均值)

題意 最大化平均值的模型 有 n個物品的重量和價值分別為wi和 vi,從中選取 k個物品使得單位重量的價值最大。也就是使得 k個物品的 vi wi 最大。使用二分搜尋解決這類問題 vi wi x 也就是 vi x wi 0 去找最大的可行解 x即可!x越大,式子左邊越小,一直逼到 0的邊界!本題屬於...