树链剖分

每次跳重链即可完成树上 K 级祖先问题,而且通常比长链剖分快。

树上启发式合并

本质上是枚举每个节点时,直接枚举子树来计算答案的一种暴力。但是由启发式合并,我们可以最后枚举重儿子的信息,然后直接保留,这样就可以在统计父亲答案时不再重新枚举重儿子的信息。

Problemset

[北京市赛 2025] 最近公共祖先

Portal.

LCA 问题显然考虑枚举 LCA 是什么,于是在第一棵树上启发式。当枚举到一个新的节点时,如果它在第二棵树上是 LCA 的儿子,那么要统计此时第二棵树上 LCA 的子树中被“激活”了多少个节点,减去枚举节点所对应的小子树内的被激活的节点。代码


Nothing built can last forever.
本站由 iznomia 使用 Stellar 1.30.4 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。