![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ac自动机
zhhx2001
这个作者很懒,什么都没留下…
展开
-
ac自动机模版hdu2222
刚开始想当然的以为是求单词们出现了多少次,事实上是有多少单词出现了其实,理解了,写这个不难三步走1:加单词建Trie2:get fail和 last数组3:套文本开始查找,延失配边走即可#include#include#include#include#includeusing namespace std;int n,tot,ch[500009][30]原创 2016-07-20 20:40:17 · 307 阅读 · 0 评论 -
bzoj1030(ac自动机+dp)
设f[i][j]表示走i步,现在在j号节点的路径条数。最后把所有f[m][i]累和就是不可读的串,一般问含有任意一个的方案数,就可以用补集的思想,总方案数减去不含有任何一个的方案数,剩下的就一定含有任意一个了!注意一个节点的fail节点,及表示它后缀的节点,如果是单词节点,那么这个点可以在getfail时直接标记为单词节点,这样就处理出树上所有不可到达的节点,实际求不包含任意一个,原创 2016-08-06 17:21:03 · 755 阅读 · 0 评论 -
bzoj3172(ac自动机)
额,说是ac自动机,感觉乱啊估计是数据水。。#include#include#include#include#include#includeusing namespace std;char wd[205][80050];int ch[1000005][30],n,tot,val[1000005],fail[1000005],last[1000005];inlin原创 2016-08-06 20:54:00 · 375 阅读 · 0 评论