题解 C F 1398 E \mathrm{CF1398E} CF1398E
题目意思
S o l \mathrm{Sol} Sol
感觉这是最近我做过比较难的 E E E 啦,细节真的草鸡多
我们在这里假定 A A A 为能翻倍的法术, B B B 相反
我们首先有个贪心思路就是每个 A A A 尽量配对大的 权值,并且第一个使用 A A A 的本身权值尽可能小,因为其不能产生翻倍贡献。
我们考虑用 set 维护 A A A 权值的集合(既保证不重复也从小到大排序便于操作)。并且假设现在有 s s s 个 A A A 那么我们计 s 1 s1 s1 表示前 s s s 大的权值和, s 2 s2 s2 表示前 s + 1 s+1 s+1 大的权值和,以及 S S S 为当前所有权值的总和。
于是我们分类讨论:
-
假设当前 A A A 的最小值 m i mi mi 在所有权值的排名 ≤ s \leq s ≤s 那么贡献即为 ( S + p