题解:AT_abc376_e [ABC376E] Max × Sum

Redamancy_Lydic / 2024-10-29 / 原文

根据题目条件,\(\max_{i\in S}A_i\) 的值是唯一的,所以我们不妨对每个这样的值,找到其对应的最小的 \(\sum_{i\in S}B_i\)

具体的,我们把数组按照 \(A\) 排序,从小到大依次枚举每个 \(A_i\)。先把前 \(k\)\(B_i\) 都插进一个 set 里面,然后在枚举 $k+1\sim n $ 的 \(A_i\) 时,取出 set 中的最大值替换掉,插入新值,就可以保证任何时候 set 里面维护的都是当前满足条件的 \(B_i\) 的最小和。

对于答案的话维护一个 \(sum\) 表示 set 里面的和即可。

提交记录