省选模拟三十九 题解
T1
神仙题
首先a[i]向b[i]连边
那么现在就有了若干条链
把他们分为0x,x0,00
(xy的情况会被00包含所有不需要讨论)
现在考虑对于每个0x,x0去处理
发现他们两个成环的方案是一样的
都可以独自成环或者融入到00的队伍中
T2
交集容斥一波
复杂度在于找环
昨天从charm那里学到了按度数把边定向的方法
复杂度O(msqrt(m))
T3
建出广义SAM用LCT维护endpos集合大小即可
2询问不会出错的原因是那个串是当前点控制的最大的
而虚点只会分离出后缀
所以对于每个时刻都记录每个串结尾位置即可
复杂度O(qnlog)