AC自动机
使用AC自动机算法的题目
QWsin
这个作者很懒,什么都没留下…
展开
-
UVa 11468 Substring
题目链接UVa 11468 Substring题解 我保证如果我自己想这道题起码要想一个星期,因为学了AC自动机完全不会用,woc而且每次都要忘记调用getfail QAQ也是够了. 乍一看有很多模板,就用字典树吧,随机一个字母就相当于走一步嘛,就相当于不断在匹配你生成的这个字符串.涉及到匹配和多模板问题当然就是AC自动机了.这里要用改造后的AC自动机(就是不用顺着f原创 2016-04-26 11:36:56 · 394 阅读 · 0 评论 -
UVa 11019 Matrix Matcher
题目链接UVa 11019 Matrix Matcher题解 这种二维化一维的方法并不少见但是我觉得我还是想不出来. 字符矩阵P可以先拆成很多行然后合成一个AC自动机,然后去匹配T的每一行,然后用cnt[i][j]表示以(i,j)为左上角这个大小为P的矩阵里有多少行与P匹配,那如果达到x了的话就是一个匹配点,当在T的第r行匹配到P的第i行(也就是AC自动机里面编为i的模原创 2016-04-26 11:54:44 · 517 阅读 · 0 评论 -
[HNOI2008]GT考试
题目[HNOI2008]GT考试题解 嘛,其实是 KMP+矩阵快速幂优化DP 这道题一开始想简单了qwq,认为不能到下一个的都只能往0位置匹配,居然过样例了,坑,后来才发现要用类似AC自动机的思想。 考虑裸DP,用dp(i,j)表示还要走i步,当前已经匹配到j位置的方案数。转移其实很好转移,用to(i,j)表示匹配到i位置时如果再填一个j(0<=j<=9)应该匹配到的位置。类似AC自动机。然原创 2016-11-03 15:16:12 · 844 阅读 · 0 评论