官术网_书友最值得收藏!

訓練3 表演評分

題目描述(POJ2833):在演講比賽中,評委對參賽者的表演進行評分。評分方法:給定n個正整數評分,刪除最大的n1個和最小的n2個評分,將其余評分的平均值作為參賽者的最終成績。請給出參賽者的最終成績。

輸入:輸入包含幾個測試用例,每個測試用例都包含兩行:第1行包含3個整數n1n2n(1≤n1, n2≤10,n1+n2<n≤5×106);第2行包含n個正整數ai(1≤ai≤108,1≤in)。在最后一個測試用例后跟3個0。

輸出:對每個測試用例,都單行輸出參賽者的最終成績,保留小數點后6位。

提示:此問題的輸入數據非常大。對C++I/O,建議使用scanf和printf。內存限制可能不允許將所有內容都存儲在內存中。

題解:本題數據量很大,不要存儲所有數據,只需用兩個隊列分別存儲最大的n1個數和最小的n2個數即可。

1. 算法設計

定義兩個優先隊列,q1最大值優先,存儲最小的n2個數;q2最小值優先,存儲最大的n1個數。用總和減去這兩個優先隊列的元素值,然后求平均數。

2. 算法實現

主站蜘蛛池模板: 株洲市| 明光市| 水城县| 赤峰市| 揭阳市| 麻阳| 常宁市| 轮台县| 黑龙江省| 长泰县| 岢岚县| 鹤岗市| 舒城县| 浦城县| 温宿县| 加查县| 台北市| 雅江县| 蒙山县| 陆河县| 星子县| 尤溪县| 和平区| 镇安县| 延长县| 临沧市| 广元市| 黄平县| 巨野县| 应城市| 泰顺县| 清徐县| 延安市| 海门市| 镇原县| 新蔡县| 文化| 常宁市| 丽水市| 仲巴县| 手游|