放假是不可能做题的。
那就写总结把。
虚树
问题的情境涉及多次树上询问,每次指定一些点,让你计算。
此类问题需要我们在线地找到尽可能少的【关键点】进行计算,最好和给的点级别一样。
虚树的思想就是这个过程。
二次排序
一个关键直觉:【指定点】两两的 LCA 一定是【关键点】。
并且,LCA 就是关键点,不多不少。
快速求 LCA 就要把这些【指定点】按 dfn 排序,然后两两求 LCA。
如何给这些点加边使得形成虚树?
单调栈
不太想学。
看了一下大致的思路类似于笛卡尔树(是维护的右链)
标签:复习,指定,LCA,排序,虚树,关键点 From: https://www.cnblogs.com/LCat90/p/18303663