题目:
输入一个字符串,求出其中最长的回文子串。子串的含义是:在原串中连续出现的字符串片段。回文的含义是:正着看和看,如 abba 和 yyxyy。在判时,应该忽略所有标点符号和空格,且忽略大小写,但输出应保持原样(在回文串的首部和尾部不要输出多余字符)。输入字符长度不超过 5000,且占据单独的一行。应该输出最长的回文串如果有多个,输出起始位置最靠左的。
分析:
首先输入的字符串有标点符号等元素,所以先想办法避免标点符号等因素来影响判断。(运用isalpha,当然也可以用其他的方式比如-'a'+'A')
其次大小写的字母也会影响,想办法来统一(运用toupper)
然后就是基本的判断是否为回文字符串,并且计算长度来不断的替换max(其中要判断所有的情况我推荐从中间向两发散,中间变量为i,发散的变量为j)