题意: 查找一个最长的子串,要求该子串的逆序同样是该串的子串。
这题做的都是心酸,,,一直在写找最长回文串,,,,,,卧槽,错的无头无脑。代码没一点问题,就是wa
最后最后才知道真正的题意。。就不能给个样例么。非要考英语?
。。。。。。卧槽
#include<bits/stdc++.h>
using namespace std;
char a[100];
int len;
int solve(int l,int r){
int f=0,cnt,m,k;
for(int i=0;i<len;++i){
cnt=0;
for(int j=i;j<len;--k,++j){
f=1;
for(m=j,k=r;k>=l;k--,m++)
if(a[m]!=a[k]) {f=0;break;}
if(f&&k<l) return r-l+1;
}
}
return 0;
}
int main(){
int T;
cin>>T;
while(T--){
int maxx=0,maxi=0,maxj=0;
scanf("%s",a);
len=strlen(a);
for(int i=0;i<len;++i){
for(int j=i;j<len;++j){
int t=solve(i,j);
if(t>maxx){
maxx=t;
maxi=i,maxj=j;
}
}
}//printf("%d %d\n",maxi,maxx);
for(int i=maxi;i<=maxj;++i) printf("%c",a[i]);puts("");
}
return 0;
}