【⭐】2025 ICPC 网络赛二 D
题目内容
给定一列数
解法
解答
对给定子序列暴力计算权值的方法十分显然:每次删去最大元素。
我们首先尝试模拟上面的过程来导出某长为
- 首先删去
,其余 个元素均增加 。 - 然后删去
,其余 个元素均增加 。 - 然后删去
,其余 个元素均增加 。 - 以此类推,可以得到当将要删去第
( )个元素时,其值此时为 ,因此序列的权值为:
考虑交换后面的二重求和的求和顺序,分析两个变量交换后的取值范围,得到
由此我们得出了对于一个给定的子序列
我们接下来希望考察将整个序列也由小到大排序后,其中某个元素
- 考虑比它小的
个元素,我们需要从中选出 个使得 的排名为 ,共有 种方案。 - 考虑比它大的
个元素,这些元素选择与否与 的排名无关,故共有 种方案。
依据乘法原理,我们得到每个元素在最终答案中的系数为
注意式中的除
AC 代码
见提交记录。(该提交记录仅笔者自己可见)
感想
赛场上就是少考虑到刚上来删去最大的
以及二重求和交换的法则十分重要,一堆内循环只涉及初等代数的二重求和的题说不定都能用这个方法秒掉。