本體的題意
每乙個奇數的字串都要是回文串
那麼就遞推一下咯
總串長 字串
1 a[1]
2 a[1]=a[2]
3 a[1]=a[3] 串長增加
4 a[2]=a[4] ,a[1]=a[3]
5 a[1]=a[3]=a[5]串長增加,a[2]=a[4]
到了之後會發現 所有的奇數項都相等 所有的偶數項都相等
#include#include#includeusing namespace std;
char str[110];
int main()
int sum=0,m=0;
for(int i=0;i<26;i++)
sum+=m;
memset(visit,0,sizeof(visit));
m=0;
for(int i=1;ifor(int i=0;i<26;i++)
sum+=m;
printf("%d\n",len-sum);
} return 0;
}
HDU 3068 最長回文串
用的manacher法,o n 複雜度,證明跟kmp演算法一樣說不清 基本上是參考部落格鏈結 dp法記憶體不夠,中心擴充套件法時間不夠 manacher法 include include include include include include include include include ...
HDU 3068 最長回文串
解法1 根據是奇數串還是偶數串,遍歷中點,更新最長max值 複雜度o n 2 解法2 manacher 馬拉車演算法 o n 馬拉車演算法 1.中間插入 符號,統一變為奇數串規避奇偶問題 2.使用乙個輔助p陣列,p i 表示以 i 為中心的最長回文的半徑,p i 1正好是原字串中最長回文串的長度 3...
最長回文串 hdu3068
給出乙個只由小寫英文本元a,b,c.y,z組成的字串s,求s中最長回文串的長度.回文就是正反讀都是一樣的字串,如aba,abba等 input 輸入有多組case,不超過120組,每組輸入為一行小寫英文本元a,b,c.y,z組成的字串s 兩組case之間由空行隔開 該空行不用處理 字串長度len 1...