poj 2010(优先队列)
生活随笔
收集整理的這篇文章主要介紹了
poj 2010(优先队列)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題意: 奶牛大學:奶大招生,從C頭奶牛中招收N頭。它們分別得分score_i,需要資助學費aid_i。希望新生所需資助不超過F,同時得分中位數最高。求此中位數。
解題思路:這里要求最大中位數,中位數肯定是在這些人中間,故可以枚舉中位數,可以先對分數進行排序,然后用二分去找最大中位數。
每次枚舉的中位數應該要檢驗是否滿足題意:
這里有一個check函數,它的返回值含義如下:
-1 直接輸出,不可能滿足條件了
0 這種方案是滿足條件的,可以把中位數調大試試
1 這種方案是不滿足的,但是把中位數調大就有可能滿足了(否則不可能滿足)
2 這種方案是不滿足的,但是把中位數調小就有可能滿足了(否則不可能滿足)
總結
以上是生活随笔為你收集整理的poj 2010(优先队列)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Spring-cloud学习教程amp;
- 下一篇: hihocoder #1078 : 线段