AC自动机
shiyongyang
这个作者很懒,什么都没留下…
展开
-
BZOJ 2938 病毒 AC自动机
题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码。如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的。现在委员会已经找出了所有的病毒代码段,试问,是否存在一个无限长的安全的二进制代码。 示例: 例如如果{011, 11, 00000}为病毒代码段,那么一个可能的无限长安全代码就是010101…。如果{01, 11, 000000}原创 2017-09-25 15:25:33 · 640 阅读 · 0 评论 -
BZOJ 4327 【JSOI 2012】 玄武密码 AC自动机+dfs
题目描述 在美丽的玄武湖畔,鸡鸣寺边,鸡笼山前,有一块富饶而秀美的土地,人们唤作进香河。相传一日,一缕紫气从天而至,只一瞬间便消失在了进香河中。老人们说,这是玄武神灵将天书藏匿在此。 很多年后,人们终于在进香河地区发现了带有玄武密码的文字。更加神奇的是,这份带有玄武密码的文字,与玄武湖南岸台城的结构有微妙的关联。于是,漫长的破译工作开始了。 经过分析,我们可以用东南西北四个方原创 2017-09-25 20:56:32 · 374 阅读 · 0 评论 -
BZOJ 1030 文本生成器 AC自动机+dp
题目描述 JSOI交给队员ZYX一个任务,编制一个称之为“文本生成器”的电脑软件:该软件的使用者是一些低幼人群,他们现在使用的是GW文本生成器v6版。该软件可以随机生成一些文章―――总是生成一篇长度固定且完全随机的文章—— 也就是说,生成的文章中每个字节都是完全随机的。如果一篇文章中至少包含使用者们了解的一个单词,那么我们说这篇文章是可读的(我们称文章a包含单词b,当且仅当单词b是文章a的子原创 2017-09-25 16:15:20 · 202 阅读 · 0 评论 -
AC自动机模板
#include #include #include #include #include #include #define N 10000090 using namespace std; int n; int date[5000500][26],fail[N],cnt[N],tot=0,ans=0; int st,pt; char str[N],ptr[N]; queue q; void原创 2017-09-21 17:29:07 · 154 阅读 · 0 评论 -
洛谷P3121审查黄金 AC自动机+栈
题目描述: FJ把杂志上所有的文章摘抄了下来并把它变成了一个长度不超过10^5的字符串S。他有一个包含n个单词的列表,列表里的n个单词记为t_1...t_N。他希望从S中删除这些单词。FJ每次在S中找到最早出现的列表中的单词(最早出现指该单词的开始位置最小),然后从S中删除这个单词。他重复这个操作直到S中没有列表里的单词为止。注意删除一个单词后可能会导致S中出现另一个列表中的单词FJ注意到列原创 2017-09-21 19:37:01 · 496 阅读 · 0 评论