LGP3586题解

我可能是sb吧,题意都能读错。

首先发现,如果有的数大于了 \(s\),那么这些数固定对答案有 \(1\) 的贡献。先数这些数的数量,然后令 \(c\) 减去这个数。

注意到剩下的数一定都不大于 \(s\)。我们在刚学贪心的时候做过一道题:一堆电池在需要两节电池的遥控器内能用多久,考虑从这个结论推下去。

为了方便,我们将原题 复杂化 为:\(c\) 个电池槽,能不能用给定的电池让其能够运行 \(s\) 个单位时间。

不过每节电池都只能运行不大于 \(s\) 个单位时间。

假设如果我们现在手上有一节电量为 \(t\) 的电池。我们总共需要 \(s\times c\) 的电量,有了这节电池,将这节电池在每个电池槽内都使用一遍就行了。能够贡献 \(\sum t\) 的电量。

也就是说,只需要将剩下的数加起来,然后判断是否不小于 \(s\times c\) 就行了。

权值树随便搞搞就行了吧。

posted @ 2022-03-25 14:41  Prean  阅读(18)  评论(0编辑  收藏  举报
var canShowAdsense=function(){return !!0};