Given a string S, find the longest palindromic substring in S. You may assume that the maximum length of S is 1000, and there exists one unique longes...
分类:
其他好文 时间:
2015-04-29 01:54:46
阅读次数:
113
Time Limit:15000MSMemory Limit:65536KTotal Submissions:5121Accepted:1834DescriptionAndy the smart computer science student was attending an algori...
分类:
其他好文 时间:
2015-04-24 12:06:40
阅读次数:
134
http://poj.org/problem?id=3974题意:求s的最长回文串。(|s|#include #include #include #include using namespace std;char s[2000050]; int len[2000050], T;int main() ...
分类:
其他好文 时间:
2015-03-19 14:37:22
阅读次数:
130
题目连接http://hihocoder.com/problemset/problem/1032题目分析类似于KMP的思想,利用已经匹配的信息计算未匹配的信息。
基本原理就是:我们将f[i]定义为以i为中心的最长回文串长度。那么如果有f[5]=7,f[4]=3, 那么我们可以得到f[6] >=3.以此来减少比较次数。当然还有一些细节要处理。比如回文串长度的奇偶性。代码这个是我自己写的版本,不是很精...
分类:
其他好文 时间:
2015-03-07 14:10:36
阅读次数:
123
关于Manacher算法,网上介绍已经很全面 这里说一下自己的理解这里的rad数组:rad[i]表示以以位置i为中心的最长回文串的回文半径(不包括i这个点)。朴素的思想大概是从每个点出发像两边扩展,大概O(n^2)复杂度?据说Manacher是O(n)的(不会证,Orz)这是因为回文串有对称性,我们...
分类:
其他好文 时间:
2015-02-26 18:17:57
阅读次数:
191
传送门:Girls' research题意:求最长回文串并输出位置及转换后的字符串。分析:manacher算法算出最长回文串后记录中心位置,然后再转换回原字符串的起始和结束位置。#pragma comment(linker,"/STACK:1024000000,1024000000")#includ...
分类:
其他好文 时间:
2015-02-25 16:48:34
阅读次数:
166
Manacher(马拉车)是一种求最长回文串的线性算法,复杂度O(n)。网上对其介绍的资料已经挺多了的,请善用搜索引擎。而扩展KMP说白了就是是求模式串和主串的每一个后缀的最长公共前缀【KMP更像是一个自动机】题目:POJ 1159:Palindrome求原字符串最少增加几个字符后可变成回文串,相当...
分类:
其他好文 时间:
2015-02-21 23:26:15
阅读次数:
242
博客已经搬家,请前往http://gqqnbig.me/ 阅读格式良好的文章。
本文将一步一步构造Manacher算法,心急的一定看不懂!请先练习下面的习题。
探索最长回文串性质
题1:已知字符串以center为中心对称,求完整的字符串。
abcd???
|
center
答
abcdcba
|
center
题2:接上题,abcdcba后面还有一些字符,以center2...
分类:
编程语言 时间:
2015-02-07 09:06:42
阅读次数:
247
求最长回文串。把原串翻转后,加在原串后面,中间插入一个辨别字符。然后求SA,Height。然后枚举每个字母作为回文串中心,分长度为奇数和偶数去讨论:奇数求 suffix(i)和suffix(n-i+1)的最长公共前缀,偶数则求suffix(i)和suffix(n-i+2)(当然,i=1时不成立) 。...
分类:
其他好文 时间:
2014-12-16 22:30:39
阅读次数:
248
消除字符串游戏,选择一个字母,则会消除和该字母相同且连续的一段,然后左右两边合拢,若左右两边字母相同则再次消除掉。直到合拢时两边字母不相同。问这样连续消除的最大次数。思路:先把连续相同的字母当成一个字母,然后求最长回文串,则答案就是(最长长度+1)/;2[cpp] view plaincopy#pr...
分类:
其他好文 时间:
2014-12-07 06:29:10
阅读次数:
186