题目:
总时间限制:
1000ms
内存限制:
65536kB
描述
给定一个字符串,输出所有长度至少为2的回文子串。
回文子串即从左往右输出和从右往左输出结果是一样的字符串,比如:abba,cccdeedccc都是回文字符串。
输入
一个字符串,由字母或数字组成。长度500以内。
输出
输出所有的回文子串,每个子串一行。
子串长度小的优先输出,若长度相等,则出现位置靠左的优先输出。
样例输入
123321125775165561
样例输出
33 11 77 55 2332 2112 5775 6556 123321 165561
———————————————————————————————————————————
代码:
#include<bits/stdc++.h>
using namespace std;
string s,s1,s2;
int a,n,m,k,l;
int main()
{
cin>>s;
for(int i=2;i<=s.size();i++)
{
for(int j=0;j<=s.size()-i;j++)
{
s1=s2=s.substr(j,i);
reverse(s1.begin(),s1.end());
if(s1==s2) cout<<s1<<endl;
}
}
return 0;
}