CDQ分治

简介

\(CDQ\)分治是由国家队选手陈丹琦在\(08\)年提出的一种基于时间的离线分治算法。因而得名。

可以在某些问题中取代诸如\(k-d tree\)的高级数据结构。


前置知识

归并排序


实现思路

CDQ分治的大体思路如下:

  1. 统计左区间答案。

  2. 统计右区间答案。

  3. 统计左区间对右区间产生的影响。

因为CDQ分治基于时间,所以后面的操作不可能对前面的操作产生影响。

只要所求的答案满足:后面的答案基于前面的答案,且不影响前面的答案,那么便可以使用CDQ分治求解。

三维偏序问题是其中典型的一类。


代码

详见陌上花开

posted @ 2019-08-18 18:50  Ilverene  阅读(518)  评论(0编辑  收藏  举报