
Manacher
ACM败犬
这个作者很懒,什么都没留下…
展开
-
bzoj 3160 : 万径人踪灭 (FFT + 马拉车)
题目大意:在一个字符串序列中,求有多少个不连续的回文子串 (整体不能全部连续,这个子串的部分可以连续). 初次学FFT对这种题是完全懵逼的,感谢大佬的题解: https://blog.youkuaiyun.com/popoqqq/article/details/42193259 答案可以用所有的回文串扣掉连续的回文串,连续的回文串可以用马拉车O(N)求出。 所有回文串:设 F[i] 为 以第i个字母为对称中心...原创 2019-07-04 10:16:43 · 144 阅读 · 0 评论 -
zoj:Strings in the Pocket (马拉车)
题目大意:有两个字符串s,t,问能否将s的一段[l,r]子串翻转使得它等于t? 如果可以,问有多少段这样的子串使得翻转一次后s = t,注:只能翻转一次。 解法:简单题,分情况讨论:如果s 原本就等于 t,这个时候s中所有回文串的半径就是答案。若s 不等于 t,则找出不相等的那一段区间的最左边和最右边,check一下中间这段能否通过翻转使得相等,如果不能答案 = 0,否则可以像两边延申判断l,r ...原创 2019-04-29 21:27:18 · 151 阅读 · 0 评论 -
2019 Multi-University Training Contest 2:I Love Palindrome String(回文树(模板) + 字符串hash(模板)或manacher)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6599 题目大意:给你一个串让你求s[l,r]s[l,r]s[l,r]是回文串且s[l,l+r2]s[l,\frac{l + r}{2}]s[l,2l+r]也是回文串的子串数目。 输出答案时要按长度划分答案,也就是按r - l + 1划分答案然后依次输出所有长度的满足条件的子串数目。 题解(待补):...原创 2019-07-28 23:56:56 · 246 阅读 · 0 评论