最長回文字串

2021-07-15 15:57:12 字數 790 閱讀 2951

時間限制:

1000 ms  |  記憶體限制:

65535 kb

難度: 4

描述 輸入乙個字串,求出其中最長的回文子串。子串的含義是:在原串連續出現的字串片段。回文的含義是:正著看和倒著看是相同的,如abba和abbebba。在判斷是要求忽略所有的標點和空格,且忽略大小寫,但輸出時按原樣輸出(首尾不要輸出多餘的字串)。輸入字串長度大於等於1小於等於5000,且單獨佔一行(如果有多組答案,輸出第一組)。

輸入輸入乙個測試資料n(1<=n<=10);

隨後有n行,每行有乙個字串。

輸出輸出所要求的回文子串。

樣例輸入

1

confuciuss say:madam,i'm adam.

樣例輸出

madam,i'm adam

**:

#include#include#define max 5010

int main()

}for(i=0;imax)

}for(j=0;j<=i&&i+j+1max)}}

for(i=st;i<=end;++i)

printf("%c",s[i]);

printf("\n");

}return 0;

}

ps:  說下這個題的處理思路  第一呢 就是字母全部提出來並且將大寫轉換為小寫 當然反之亦然  第二個呢 就是要考慮到奇數回文字串和偶數回文的區別   然後就是利用迴圈  暴力的搜出最大的解  輸出就可以了。

最長回文字串

scanf s 輸入字串碰到空格或者tab就會停下來。此處可以使用fgets或者gets 另外注意標頭檔案cctype中的函式的巧妙使用,此處使用isalpha和toupper簡化了 此處列舉字串的中間位置,然後向倆邊擴充套件,節省了時間複雜度,注意向倆邊擴充套件時,奇數個和偶數個長度的區別。另外程...

最長回文字串

回文串定義 回文串 是乙個正讀和反讀都一樣的字串,比如 asddsa 或者 lovekevol 等等就是回文串。回文子串,顧名思義,即字串中滿足回文性質的子串。這裡我給出通過 列舉回文串的中間位置i,然後不斷向外擴充套件,直達有字元不相同。注意,這裡長度為奇數和偶數的處理方式是不一樣的。下面給出 這...

最長回文字串

給定乙個字串,確定它是否是回文,只考慮字母數字字元和忽略大小寫。例如 a man,a plan,a canal panama 是回文字串。race a car 不是回文字串。注意 你有考慮過這個字串可能是空的嗎?在面試中這是乙個很好的問題。針對此題目,我們將空字串定義為有效的回文字串 題目分析 回文...