range pair LCA equal x query

· · 题解

rplexq = range pair LCA equal x query

这题就是各种平衡复杂度。

考虑朴素的做法。对 x 的每棵子树统计它里面编号在 [l,r] 内的节点个数,然后计算两两乘积的和。可以通过总节点数平方减去每个儿子子树里节点平方的方式计算。

考虑对节点度数进行根号分治。

如果之前统计的是不合法方案,最后还需要一次二维数点来统计总方案。时间复杂度为 O(m\log n)

综上,这个算法的时间复杂度为 O(n\sqrt n+n\sqrt m+m\sqrt n),空间复杂度 O(n+m)