在此由衷感谢验题方: Cedeat HaPpY夢 silence_JY 长途 A:数组的贡献 对任意元素 考虑它作为区间内部被计数的元素时的贡献,可以将问题转化为:每个 能作为“区间中不小于端点的元素”出现多少次? 对于任意一个位置,我们可以事先预处理其左右两侧(包括自身)分别有多少可以作为边界的选择,那么它的贡献即为:能选的左端点个数 × 能选的右端点个数。最终答案枚举所有位置求和即可。 预处理需要得到一个数以左(包括自身)小于等于它的数的个数,和一个数以右(包括自身)小于等于它的数的个数。可以通过树状数组解决这一问题。 对任意元素 考虑它作为区间内部被计数的元素时的贡献,可以将问题转...