「考试」省选48
。。。
T1
套路题
建出\(SAM\),离线询问按右端点排序。
做\(LCT+SAM+\)线段树的扫描线。
然后把每一个前缀节点\(access\)并且染色。
染色之前把被覆盖的颜色在线段树上打上相应的\(len\)的贡献。
然后查询的时候直接查询相应区间即可。
T2
发现题目要求的就是重心。
然后我们如果不破坏之前的重心。
当前要求的点永远不可能成为重心。
那么就做一个重心儿子的\(sz\)从大到小排序后前缀和。
对于每一个点二分出至少需要砍掉的儿子个数即可。
T3
从后面向前爆搜就过了。。。
正解的话
我们考虑建图\(i-P_i\)。
发现肯定都是一个个环。
因为有解,所以必然不存在奇环。
那就简单了。
大小为\(2\)的环解是唯一的。
每一个环都最多只有两种可能的状态。
环的大小至少为4。
也就是最多只有\(25\)个环。
仍然爆搜+判断即可。