做题
也是靠自己做上来一道自己觉得很有水平的题了,用了至少一个半小时,很有成就感嗷
一个字符串是回文串,当且仅当该字符串从前往后读和从后往前读是⼀样的,例如aabaa和ccddcc都是回⽂串, 但abcd不是。 乎乎有 n 个仅包含小写字母的字符串,他想请你编写程序判断每个字符串是否由两个长度至少为 2的回文串前后拼接而成。
#include <iostream>
#include<algorithm>
#include<string.h>
using namespace std;
int main() {
int i,j,n;
cin>>n;
for(j=0;j<n;j++){
int p=0;
string s="";
cin>>s;
for(int k=1;k<=s.length()-3;k++){
string c="";
string d="";
string e="";
string f="";
for(i=0;i<2+k-1;i++){
c+=s[i];
}
d=c;
for(int l=2+k-1;l<s.length();l++){
e+=s[l];
}
f=e;
reverse(d.begin(),d.end());
reverse(f.begin(),f.end());
if(d==c&&e==f){
cout<<"Yes"<<endl;
p=1;
break;
}
}
if(p==0)
cout<<"No"<<endl;
}
}