AC自动机
「已注销」
这个作者很懒,什么都没留下…
展开
-
[AC自动机+DP]BZOJ1030 (JSOI2007)文本生成器 题解
题目大意给出n个模板串,如果在一个文本中至少存在一个模板串,那么这个文本就是合法的,求长度为m的文本的合法方案数模10007后的结果。解题报告AC自动机+DP的经(mo)典(ban)题。用模板串建AC自动机,f[i][j]f[i][j]f[i][j]表示文本串长度为iii,在AC自动机上匹配到节点jjj的方案数,注意别走到单词节点,而且如果fail[x]fail[x]fail[x]...原创 2018-09-07 21:42:45 · 184 阅读 · 0 评论 -
AC自动机
简介AC自动机,全称Aho-Corasick自动机,适用于存在多个模板串的字符串匹配问题,如果没有AC自动机,你可能需要对n个模板串分别求一趟KMP,但是复杂度过高,而AC自动机可以一次匹配,效率更优秀。实现KMP是在字符串上线性匹配,而AC自动机则在字符串的集合上匹配,什么东西可以把一大堆字符串吧、放一起存储?Trie!所以AC自动机其实就是在Trie上生成KMP的失配函数。...原创 2018-08-30 15:07:35 · 1042 阅读 · 0 评论 -
[AC自动机]BZOJ4327 JSOI2012 玄武密码 题解
题目大意给出nnn个文本串|s||s||s|和1个模板串|S||S||S|,问对于每个文本串能与模板串匹配的最长前缀长度。∑|s|≤107,|S|≤107,n≤105∑|s|≤107,|S|≤107,n≤105\sum|s|\le10^7,|S|\le10^7,n\le10^5解题报告对nnn个文本串建立AC自动机,然后将模板串放到AC自动机上匹配,对于匹配到的点就沿着它的fa...原创 2018-09-06 19:15:51 · 250 阅读 · 0 评论