AC自动机
Mima_Reincarnation
这个作者很懒,什么都没留下…
展开
-
BZOJ2938: [Poi2000]病毒 AC自动机
题目大意:给出一些01串,问是否存在一个无限长的串不包含这些串中的任意一个。 总长不超过30000。 建立AC自动机,则问题转化为在AC自动机上找环。考虑什么样的节点不能走。若一个节点是单词节点,那么所有fail指向它的节点一定包含了它作为后缀,所以这些节点都不能走。所以对于一个节点,如果它的fail节点危险,那么它也危险。所以不走危险节点,DFS查找是否有环即可。 由tarjan的过程类比,原创 2017-01-02 20:50:03 · 444 阅读 · 0 评论 -
BZOJ2553: [BeiJing2011]禁忌 AC自动机 期望DP 矩阵
题目大意:给出n个禁忌串,定义任意一个字符串的禁忌伤害是不相交的禁忌子串的最大个数,求长度为len的随机串禁忌伤害期望。 所有的串只包含前alphabet个拉丁字母。 N ≤ 5,len ≤109,1 ≤ alphabet ≤ 26。 对所有禁忌串建AC自动机,问题转化成:每次在AC自动机上走一步,走到危险节点(即有危险标记的节点或者能沿fail走到危险标记的节点)就自动回到根,求危险节点的期原创 2016-12-27 14:24:28 · 432 阅读 · 0 评论 -
BZOJ1444: [Jsoi2009]有趣的游戏 矩阵求逆+AC自动机
题意:N个人,每个人有一个长度为L的字符串,字符都在前M个大写字母中,现开始连续地随机产生字符,每次产生某个字符的概率是固定的,当一个人的字符串被产生出来他就赢了,求每个人赢的概率。 N,M,L<=10 百度了一下没查着和我一样用矩阵求逆做的。。。好像精度要求不高,邻接矩阵自乘几次就能过? 算了。。。首先赢不了的人可以特判掉,所有人都赢不了就直接退出(我觉得这样应该可以防止矩阵不可逆),建一下原创 2017-01-06 17:01:36 · 1223 阅读 · 1 评论