给出一棵有根树,1为根结点,接下来q次询问,每次给出一个[l,r]区间,现在允许删掉[l,r]区间内任何一个点,使得所有点的最近公共祖先的深度尽可能大,问删掉的点是哪个点,深度最大是多少. 做法: 线段树维护区间dfs序的最大值,最小值. 首先,区间的LCA等价于区间dfs序的最小值和最大值对应的两个点的LCA. 然后,根据dfs序的性质,当删掉的点的dfs序最大或者最小时,对答案贡献最大. 所以接下来只要去查询区间里的LCA(最小值,次大值),以及LCA(次小值,最大值),两个LCA中深度最大…