省选模拟三十九 题解

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)

 

posted @ 2020-03-07 18:52  ATHOSD  阅读(82)  评论(0编辑  收藏  举报