![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
字符串---Manacher
forezxl
水君一枚
展开
-
Manacher算法简介(HDU3068 hihocoder1032)
Manachar算法主要是处理字符串中关于回文串的问题的,它可以在 O(n) 的时间处理出以字符串中每一个字符为中心的回文串半径。原创 2017-09-27 19:03:37 · 268 阅读 · 0 评论 -
BZOJ2084 [Poi2010]Antisymmetry(洛谷P3501)
Manacher BZOJ题目传送门 洛谷题目传送门 注意到如果不取反就是求回文串。那么我们重新定义一下这个“回文串”就是反过来恰好相反的字符串,刷manacher的时候把条件改一下就好了。 代码: #include<cctype> #include<cstdio> #include<cstring> #include<algorithm>...原创 2018-08-24 20:29:32 · 249 阅读 · 0 评论 -
BZOJ3790:神奇项链
Manacher 贪心 题目传送门 **题目大意:**给你一个字符串,你可以造任意的回文串并把它们拼起来得到原串,求最少拼接次数(回文串可重叠)。 先Manacher求出ppp数组,把每个点看成一个一条线段,左右端点分别为i−p[i]i-p[i]i−p[i]和i+p[i]i+p[i]i+p[i]。然后就变成线段覆盖问题(用最少的线段覆盖住整个区间),贪心即可(我懒就用了堆)。 代码: #inclu...原创 2018-10-05 18:23:37 · 311 阅读 · 0 评论