我的思路是这样的,把每个对按照 AAA 的值进行排序,然后枚举 111 到 nnn,意味着满足第 iii 到 nnn 的 AAA 值的同时满足 111 到 i−1i-1i−1 的 BBB 值。我们可以得到满足它们的最小的区间 [l,r][l,r][l,r],然后就可以对它拓展:对于长度为 kkk 的数列,我们对它做出的贡献为 l−1l-1l−1,m−rm-rm−r 和 kkk 的最小值加一,对于贡献的改变可以分为两段然后用线段树实现区间加。先不考虑去重问题,我有办法去重,但是不好表达。
我因为还有学校OJ的题要做,所以没时间打代码了,只能请各位神仙帮忙看下有没有纰漏。