不能说是一个算法,应该算是一类思想
点分治
概念
点分治就是把树上问题中的节点拿来分治。
这所谓的“分治”是一个很抽象的概念,那么就先来介绍它的常见应用和其他性质。
常见应用
统计树上点对路径长度为$k$的条数
显然路径规模是$O(n^2)$的。
注意到这$n^2$路径间有很多共用的部分。
对于有重叠的路径,可以看做这样的至少有一个重叠点的形式。
自然想到类似的“按边统计贡献”的方式,对于点来统计路径可能的长度。
又由于
不能说是一个算法,应该算是一类思想
点分治就是把树上问题中的节点拿来分治。
这所谓的“分治”是一个很抽象的概念,那么就先来介绍它的常见应用和其他性质。
显然路径规模是$O(n^2)$的。
注意到这$n^2$路径间有很多共用的部分。
对于有重叠的路径,可以看做这样的至少有一个重叠点的形式。
自然想到类似的“按边统计贡献”的方式,对于点来统计路径可能的长度。
又由于