小A的回文串(模擬或者manacher)

2022-06-08 15:30:11 字數 847 閱讀 8265

一行乙個字串表示給定的字串s一行乙個字串表示給定的字串s一行乙個字串表示給定的字串s

一行輸出乙個整數,表示通過這樣的操作後可以得到最大回文子串的長度。
示例1

複製

dcbaabc

複製

7

將前面的dcba移動到末尾變成abcdcba,這個字串的最大回文子串就是它本身,長度為7

n表示字串的長度,1≤n≤5000

眾所周知,如果乙個字串是回文串的話分為兩種,和aba和aabb,這兩種可以都弄成一種,就是加#操作,

比如aba變成#a#b#a#b#,aabb變成#a#a#b#b#這樣只需要列舉中間中間點就行

然後看看這個題就是兩相同的字串連再一起之後然後列舉這個中間點就行

#include#include

#include

using

namespace

std;

const

int maxn=1e6+100

;char

a[maxn];

string

s;int

main()

int ans=0

;

for(int i=1;i<=cnt;i++)

ans=max(ans,z);

}cout

<2

<}

演算法入門模擬 回文串

題源 codeup 5901 題目描述 讀入一串字元,判斷是否是 回文串 回文串是乙個正讀和反讀都是一樣的字串。例如 level noon 就是回文串。輸入 一行字串,長度不超過255。輸出 是回文串,輸出 yes 不是則輸出 no 思想 就 level 字串來說,用a 5 儲存 level a 5...

模擬(古風排版,回文子串)

題目鏈結 題目 中國的古人寫文字,是從右向左豎向排版的。本題就請你編寫程式,把一段文字按古風排版。輸入格式 輸入在第一行給出乙個正整數n 100 是每一列的字元數。第二行給出乙個長度不超過1000的非空字串,以回車結束。輸出格式 按古風格式排版給定的字串,每列n個字元 除了最後一列可能不足n個 輸入...

牛客 小A的回文串 最長回文串,馬拉車演算法

題目 題目鏈結 小a只想知道給定的乙個字串的最大回文子串是多少,現在小a可以對這個字串做一些改動,他可以把這個字串最前面的某一段連續的字元 不改變順序 移動到原先字串的末尾。那麼請問小a通過這樣的操作之後 也可以選擇不移動 能夠得到最大回文子串的長度是多少。思路 1列舉所有字串 使用馬拉車演算法 2...