不难想到树链剖分这题的难点是记录的是路径上宗教相同的点裸的想法是对每一种宗教都开一棵线段树,记录每个点的评级但显然这样会爆空间,仔细分析一下,这些线段树内很多点压根就没用到因此我们考虑对线段树动态开点,不难发现每次修改最多要开线段树上O(2*logn)个点,是可以接受的然后就是打码的问题了 type node=record po,next:longint; end; link=record l,r,s,m:longint; end; ..*] of link; fa,size,d,top,p,c…