Source
Codeforces Round #375 (Div. 2)
My Solution
贪心+排序
刚开始的时候理解题意错了,以为最小值尽可能大,最大值尽可能小,
但其实是中间贪心的过程中把最大值的 cnt[m-1].b的乐队变成最小值的乐队 cnt[0].b,直到 cnt[0].cnt 达到 n / m 就是最大的那个最小值了,而bj 的最大值不用再压缩了。
即
val[i].b 表示乐队编号, val[i].cnt 表示该乐队当前表演songs的数量
while(最小值 < int(n / m)){
如果 大于m的 v[j] 还有则把这个v[j] 变成 当前最小值的乐队 val[0].b;
否则把当前最大值的乐队变成 当前最小值的乐队 val[0].b;
cnt++;
重新排序
}
复杂度 O(n^2)
#include
#include
#include
#include
非特殊说明,本博所有文章均为博主原创,未经许可不得转载。
https://www.prolightsfxjh.com/
Thank you!
------from ProLightsfx
共有 0 条评论