trivial分治算法
按时间分治: CDQ分治 解决大多可以归化为 k k k 维偏序问题的离线算法。 K K K 维偏序问题的 b i t s e t bitset b i t s e t 解法: [已完成]例题1:CF 70 D ,支持动态加点的凸包问题,可以使用CDQ分治变成离线. [已完成]例题2:CF 848C, 设一段区间的价值为区间内每个出现过的数,最后一次出现的位置-第一次出现的位置之和。要求支持单点修改和区间查询。 解法:把每个 ai 看作二元组 ( i , p r e v a i ) (i,prev_{a_i}) ( i , p r e v a i ) ,则 a i a_i a i 在区间内的贡献为 ∑ l ≤ i , p r e v a i ≤ r i − p r e v a i \sum_{l≤i,prev_{a_i}≤r}i−prev_{a_i} ∑ l ≤ i , p r e v a i ≤ r i − p r e v a i ,中间的部分均消去,剩余的贡献恰为题目所求。因此,时间、 i i i 、 p r e v a i prev_{a_i} p r e v a i 组成了三维数点问题的三个维度,套用 CDQ 分治解决。 例题3:【UOJ#50】【UR #3】链式反应(分治FFT,动态规划) 线段树分治 动态图连通性.