CDQ 分治可用于处理「偏序」类问题,较常用于「三维偏序」。
「偏序」是指某一维变量的大小关系。一般而言,第三维变量的统计可以借助树状数组、二分等。
例题
洛谷 P3364 Cool loves touli
$f_i=\max\limits_{l_i<l_j,a_j\le s_i,w_j\le a_i}\{f_j+1\}$。
对于 $a_j<a_i,b_j<c_i,d_j<e_i$ 类偏序问题,可先按照维度 $a$ 排序,接着递归处理的时候,左儿子按照 $b$ 排,右儿子按照 $c$ 排,$d$ 插入树状数组,$e$ 在树状数组中查询即可在 $O(n\log^2n)$ 的复杂度内完成。
建议补一个 CDQ 分治 & 斜率优化 DP。
在斜率优化 DP 内有了
“哇,太大神啦
%%%
我的评价是:“哇,太大神啦”。