CF#301 B:School Marks(贪心)

B:School Marks

有n个测试,已经完成了k个,每个测试得分为a[i],接下来的分数不知道,让我们求出任何一个满足题意的即可,满足题意就是n个测试的得分总和<=x, 中位数>=y;

可以想一下先求出来已经有几个大于y的用cnt_y来表示,如果能构成满足题意的数必定至少有(n+1)/ 2个>=y 的数,所以我们可以添加 Y=(n+1)/ 2 - cnt_y 个 y,当然 Y < n - k;剩下的就是添加1了,这样就能

满足总和最小,如果这个总和还大于x那就不存在

View Code
原文地址:https://www.cnblogs.com/zhengguiping--9876/p/4986217.html