![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Manacher
「已注销」
这个作者很懒,什么都没留下…
展开
-
Manacher算法
Manacher算法作用Manacher算法(又名“马拉车”算法)主要用于解决一类常用问题——最长回文子串(很多公司笔试都有这类题)。效率为O(n),线性的效率可以秒杀所有低能算法。实现首先关于回文串的长度有可能是奇数也有可能是偶数。通常情况下这个问题需要分类讨论,但是这真的很烦很烦。而Manacher算法对于这个细节问题采用了一种巧妙的方法:在每两个字符,以及字符的开始和结束部分都插入一个分隔字符原创 2017-05-02 21:37:41 · 713 阅读 · 5 评论 -
BZOJ 2084: [Poi2010]Antisymmetry 题解
写完睡觉……此题有权限……题目大意给出一个0和1的串,要求求出所有特殊子串,一个特殊子串满足这个子串取反并回文后的串与原串相同。解题分析貌似就是Manacher,对字符相等进行一下变换,然后,就成了求回文子串个数,那么对于一个字符串中的字母,先用Manacher求出p数组,那么我们知道其最长回文子串的长度为p[i]-1,而且如果这么长的是回文的,那么两边同时缩短一点也是回文的,也就是说以i为中心的回原创 2017-07-30 23:25:23 · 255 阅读 · 0 评论 -
[Manacher]BZOJ 2160 拉拉队排练 题解
题目大意 给出一个长度为n的字符串,求它前k长的回文子串长度乘积。n≤106,k≤1012n≤106,k≤1012n \le10^6,k\le10^{12} 解题报告 某神犇曾经说过:“ 水水博客有利身体健康。” 所以这题就是Manacher裸题,因为如果[L,R]是回文子串,那么[L+1,R-1]也是回文子串。所以前缀和统计就行了。 #include<cstdio> #...原创 2018-08-24 22:18:22 · 161 阅读 · 0 评论 -
[Manacher+贪心]BZOJ 3790 神奇项链 题解
[Manacher+贪心]BZOJ 3790 神奇项链 题解 本题有权限 题目描述 Description 母亲节就要到了,小 H 准备送给她一个特殊的项链。这个项链可以看作一个用小写字 母组成的字符串,每个小写字母表示一种颜色。为了制作这个项链,小 H 购买了两个机器。第一个机器可以生成所有形式的回文串,第二个机器可以把两个回文串连接起来,而且第二个机器还有一个特殊的性质:假如一个字符串的后缀和...原创 2018-10-08 20:59:05 · 457 阅读 · 0 评论 -
[Manacher+离线+线段树]2015计蒜之道初赛第三场 商品推荐走马灯 题解
题目大意 给出一个长度为nnn的序列,多次询问一个区间[L,R][L,R][L,R]内所有回文子串的权值和。 解题分析 涉及到回文字符串的题目立刻脑回路想到Manacher,那么这题可以考虑从回文中心入手,然后又发现这道题支持离线操作,所以可以离线询问,然后分析每一个回文中心的影响。 那么对于一个询问,会存在回文中心是先碰到左端点还是先碰到右端点,所以可以分成两半分别处理,对于左半区间,肯定会先碰...原创 2018-10-29 16:25:27 · 207 阅读 · 0 评论