回文串是指aba、abba、cccbccc、aaaa這種左右對稱的字串。
輸入乙個字串str,輸出str裡最長回文子串的長度。
input
輸入str(str的長度 <= 100000)
output
輸出最長回文子串的長度l。
sample input
daabaac
sample output
5
#include
#include
#include
#include
using
namespace
std;
char s[100005],str[300005];
int num;
int len[300005];
void get_str()
str[k++]='#';
num=k;
}void manacher()
}}int main()
高效的求最長回文子串的演算法 Manacher
gdoi市選出了一道關於manacher的題目,於是打算學一下,但因為網路流鴿了一陣,最近才學完,學完後表示複雜度有點迷。manacher,俗稱馬拉車,是由一位名叫manacher的人與1975年提出的,這個演算法讓求最長回文子串的複雜度從o n 2 下降到了o n 先從n方演算法說起,n方演算法是...
最長回文子串 V2(Manacher演算法)
回文串是指aba abba cccbccc aaaa這種左右對稱的字串。輸入乙個字串str,輸出str裡最長回文子串的長度。input 輸入str str的長度 100000 output 輸出最長回文子串的長度l。input示例 daabaacoutput示例 5 include include ...
最長回文子串 2
忽略字串中的大小寫和標點 include include include define maxn 5000 10 測試資料 confuciuss say madam,i m adam 忽略大小寫 char buf maxn 儲存源字串 char s maxn 儲存去除標點並改為大寫後的字串,方便判斷...