[学习笔记]树分治

静态点分治

即对于一类在树上路径计数的问题。

其树形态为正常的。

我们选取根\(rt\),则路径可划分为经过该点与不经过该点。

对每个子树递归求解,每次都选取重心作为子树递归的\(rt\),这样只会操作\(log\)层。

边分治

略。

动态点分治

其和静态点分治的关系和序列分治统计与线段树的关系。

其一般用来解决一种与树原形态无关的待修改的问。

我们通过点分治每次找重心的方式来对原树进行重构。

将每次找到的重心与上一层的重心缔结父子关系,这样就可以形成一棵\(log\)层的树。

由于树为 \(log\) 层,很多不对劲的暴力在点分树上有优秀复杂度。

其具体使用方法在练习记录中给出。

posted @ 2021-12-16 13:37  fhq_treap  阅读(62)  评论(0编辑  收藏  举报