CF竞赛题目讲解_CF316G3(广义后缀自动机)
2022-10-08 16:28 作者:Clayton_Zhou | 我要投稿
AC代码:
https://codeforces.com/contest/316/submission/175076297
题意:
给出n个限制(p,l,r),我们称一个字符串满足一个限制当且仅当这个字符串在p中的出现次数在[l,r]之间。
求S的所有本质不同的子串中,有多少个满足所有限制。
题解:
广义后缀自动机
把原串和所有限制串放到一起建一个广义后缀自动机,
然后在后缀自动机树上统计一下即可得到每个子串在每个限制串中出现了多少次。
现在我们想知道原串中有多少满足条件的子串,即我们统计一下所有出现次数符合要求的,
且在原串中出现过的节点。