cdq \text{cdq} cdq+归并
二维偏序
第一维排序
第二维归并排序:
每一层递归完 ( l , m i d ) , ( m i d + 1 , r ) (l,mid),(mid+1,r) (l,mid),(mid+1,r)后处理左对右的贡献:
按第二维合并左边和右边,初始化 c n t = 0 cnt=0 cnt=0,若当前插入数在 [ l , m i d ] [l,mid] [l,mid]中, c n t + 1 cnt+1 cnt+1,否则将当前数的答案 + c n t +cnt +cnt。
O ( n log n ) O(n\log n) O(nlogn)
三维偏序
第一维排序
第二维归并排序:
某一层递归完 ( l , m i d ) , ( m i d + 1 , r ) (l,mid),(mid+1,r) (l,mid),(mid+1,r),左右边第一维的相对大小是一定的,于是将每个数变成 ( 0 / 1 , b i , c i ) (0/1,b_i,c_i) (0/1,b</