
|--AC自动机
文章平均质量分 52
Baileys0530
这个作者很懒,什么都没留下…
展开
-
POJ1625 DP+AC自动机+大数加法
题目描述:给n个可用字母,组成长为m的串s,其中有w个子串t是不能在这些串s中出现的,请问这样的串s有多少种? 思路:先建立一个ac自动机,并且标记每个w的结束节点end=1,同时把fail指向end=1的点的end也改写为1。现在要计算从root走m步(不能经过end=1的点)一共有多少种走法。采用DP的写法,记dp[step][i]表示从root走step步可以到j点。如果i能一步走到j,那么原创 2015-07-29 22:00:27 · 1153 阅读 · 0 评论 -
初识AC自动机 HDU2222
做了一天了,看懂了AC自动机的原理,纯属脑洞码了一天~几个小函数解释如下:insert即trie树建立的过程KMP是找到trie树中的每个节点的后缀节点,和一维的字符串差不多find(x,d)是找到x结点下经过字符d转化到的下一个结点,可能会出现没有的情况,标记为0,即重新返回根节点HDU2222注意点:若关键字A与关键字B重复,在主串中出现一个算两次若原创 2015-07-20 19:37:32 · 714 阅读 · 0 评论