BZOJ 3626 LCA(离线+树链剖分)

Posted freeloop

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BZOJ 3626 LCA(离线+树链剖分)相关的知识,希望对你有一定的参考价值。

首先注意到这样一个事实。

树上两个点(u,v)的LCA的深度,可以转化为先将u到根路径点权都加1,然后求v到根路径上的总点权值。

并且该题支持离线。那么我们可以把一个区间询问拆成两个前缀和形式的询问。

现在问题就变成了求[1,r]和x的LCA深度之和。实际上就是把[1,r]到根路径点权点1,然后求x到根路径上的总权值。

我们按编号从小往大依次加路径点权。然后就可以有序处理询问。用树链剖分维护的话,总复杂度为O((n+q)lognlogn).

 

以上是关于BZOJ 3626 LCA(离线+树链剖分)的主要内容,如果未能解决你的问题,请参考以下文章

BZOJ 3626: [LNOI2014]LCA 树链剖分 线段树 离线

BZOJ 3626: [LNOI2014]LCA [树链剖分 离线|主席树]

BZOJ3626[LNOI2014]LCA 离线+树链剖分+线段树

bzoj3626: [LNOI2014]LCA (树链剖分)

bzoj3626[LNOI2014]LCA 树链剖分+线段树

BZOJ3626 LNOI2014 LCA 树链剖分