专栏文章

题解:AT_abc396_f [ABC396F] Rotated Inversions

AT_abc396_f题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@mipz7uq1
此快照首次捕获于
2025/12/03 20:21
3 个月前
此快照最后确认于
2025/12/03 20:21
3 个月前
查看原文
求出原序列逆序对数量,开 mm 个 vector 存每个值的出现位置。
kk 增加的过程看做把原序列每个数加一再模 mm 的过程。考虑求出每次改变增加或减少的逆序对数。
每次 kk 增加,可能有一些点从 m1m-1 变成 00,只有这些点会影响逆序对数量。
通过 vector 求出这些点位置。由于这些点原本是序列中最大值,操作后变为序列中最小值,所以它们右边原本全都比它们小,左边操作后全都比它们大。减去右边数量加上左边的就做完了。
当然值一样的点永远不会产生逆序对,需要判断一下。

评论

0 条评论,欢迎与作者交流。

正在加载评论...