![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
回文自动机
UniverseofHK
事情留在今天,时间送给明天
展开
-
回文自动机
回文自动机小小总结:别忘了写上初始化!当字符串下标从0开始时,pos初始化为-1根据一个串回文子串不超过∣s∣|s|∣s∣,回文树节点数不超过n+2n+2n+2写法与后缀自动机很像,但如果只有后缀插入的话节点编号是递增的,统计endpos数(cnt值)时无需进行计数排序上板子//#pragma comment(linker, "/STACK:102400000,102400000...原创 2019-08-04 15:29:36 · 663 阅读 · 0 评论 -
洛谷-P4287 双倍回文(回文自动机)
双倍回文刚刚用Manacher写了一遍这个题,现在换种写法,舒服!!!优美的half数组求法(Manacher的简单写法请走这里)题意:若一个回文串左半部分和有半部分分别为一个回文串,则这个回文串被称为双倍回文串(这名字有点傻呀!)。求:给定一个回文串,问最长的双倍回文串有多长。思路:由于双倍回文串是建立在回文串的基础上的,因此我们只需要对回文串动动手脚就行了首先建好回文自动机然后...原创 2019-08-05 00:18:56 · 196 阅读 · 0 评论 -
Virus synthesis(回文自动机,DP)
Virus synthesis回文自动机好题!题意:初始有一个空串,然后通过两种操作得到目的串t,求最少操作数。两种操作分别为:在字符串前面或者后面任意加一个字符在字符串前面或者后面加上当前字符串的镜像思路:思考一下,花费(操作数)要最小(少),那肯定操作2越多越好呀!同时,若过程中经过了操作2,那目的串一定是由某一次操作2以及在字符串前后使用操作1得来的,因此我们只需要求出这...原创 2019-08-06 14:55:25 · 300 阅读 · 0 评论 -
牛客多校2019-6C-Palindrome Mouse(回文自动机+统计支配点)
Palindrome Mouse题意:若把给定字符串的所有不同回文子串放到一个集合内,求集合内有多少对回文子串满足其中一个是另一个的子串。思路:建好回文自动机若设ansians_iansi为回文树上能到达iii节点的节点数(0,10,10,1除外),则题目要求的就是∑i=2szansi\displaystyle\sum_{i=2}^{sz}ans_ii=2∑szansi那么如何统...原创 2019-08-06 16:56:40 · 274 阅读 · 0 评论 -
Colorful String(2019徐州网络赛)(回文自动机上dfs+状压)
Colorful String比赛一开,我看的第一题就是这题。然后一看,回文串!那肯定回文自动机搞一下不就行了吗?再仔细一看,发现有个小地方我不敢确定,遂想用manachermanachermanacher水过去,想了一小会,发现不好实现,于是又转战回文自动机。由于当时一下子想不起来回文自动机的两棵树的转移边有没有交叉的,马上去找了篇博客看一下树的形态,发现,应该是没有交叉的。于是马上敲了一个d...原创 2019-09-09 10:13:50 · 262 阅读 · 0 评论 -
秩序魔咒(回文自动机+最长公共回文子串)
秩序魔咒题意:求两个串最长相同的回文子串的长度,并求出这种长度的子串有多少个思路:既然有回文串,自然会想到回文自动机或manachermanachermanacher,而用回文自动机会变得非常板子!最长的很容易处理,而要在两个串中都出现,我们可以像后缀自动机那样将两个串连在一起,中间用两个不同且不会出现的字符连接(由于回文自动机内部要调用这个字符串,因此必须真正的将字符串进行连接)。...原创 2019-09-24 14:40:13 · 207 阅读 · 0 评论