【模板】三维偏序(陌上花开)
P3810 【模板】三维偏序(陌上花开)
考虑 CDQ
分治。
考虑简单情况。
- 一维偏序,排序即可,复杂度 \(O(n\log n)\)。
- 二维偏序,排序后使用树状数组离散化后维护(参考逆序对,特点是已经将第一维排序过了)。
- 二维偏序,排序后使用归并排序(参考逆序对,特点是已经将第一维排序过了)。
考虑三维偏序,我用先用3.的做法,然后在归并的过程中套用树状数组即可。对于重复的元素,我们记录在一个数的信息中,最后处理一下加上自己的这一类的个数 \(-1\) 即可。
时间复杂度 \(O(n\log^2n)\)。