ABC452F Interval Inversion Count
https://atcoder.jp/contests/abc452/tasks/abc452_f
记 \(\operatorname{inv}(l, r)\) 为 \([l, r]\) 的逆序对数。
考虑计算 \(f(k)\) 为 \(\operatorname{inv} \le k\) 的子区间个数,答案为 \(f(k) - f(k - 1)\)。注意到若 \(\operatorname{inv}(l, r) \le k\),则 \(\operatorname{inv}(l, r - 1) \le k\)。枚举 \(l\),双指针维护最大的 \(r\) 满足 \(\operatorname{inv}(l, r) \le k\),对 \(f(k)\) 的贡献为 \(r - l + 1\)。

浙公网安备 33010602011771号