随笔分类 - 字符串——AC自动机
摘要:题面:洛谷 题解: 如果我们对这些小串建出AC自动机,那么我们所求的大串就是要求满足遍历过所有AC自动机上的叶子节点,且经过步数最少的串。如果有多个步数相同的串,要输出字典序最小的串。 在AC自动机上DP。 因为我们要求所求串内要出现所有给定小串,而小串个数较少,因此我们考虑状压,然后保存下val[
阅读全文
摘要:题面:洛谷 题解: 我们对给定串建AC自动机,因为串个数较小,我们考虑状压。 设f[i][j][k]表示走了i步,当前在j号节点上,状态为k的方案数。 同时AC自动机上每个点的val都是对应的到达这个点后可以新增的状态。 每次枚举下一个字符即可转移,在建完自动机之后,记得把fail树上对应的链上的点
阅读全文
摘要:题面: 洛谷 题解: 很久之前做的题了,只不过之前一直90.。。。最近才发现是哪里写错了。 我们对字符集建AC自动机。 首先考虑一个暴力的做法,把文章当做一个长串,直接在自动机上跳,但是我们会发现,这样的复杂度可能退化到$n^2$. 因为对于一个类似于aaaaaaaaaaaaaaaa这样的串而言,一
阅读全文

浙公网安备 33010602011771号