字符串操作
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
string a[100];
int flag[100]={};
for(int i=0;i<n;i++)
{
cin>>a[i];
for(int j=2;j<a[i].size()-1;j++)
{
string b=a[i].substr(0,j);
string b1=b;
string v=a[i].substr(j,a[i].size()-j);
string v1=v;
reverse(b.begin(),b.end());
reverse(v.begin(),v.end());
//cout<<b1<<" "<<v1<<endl;
if(b==b1&&v==v1)
{
flag[i]=1;
break;
}
}
}
for(int i=0;i<n;i++)
{
if(flag[i]==1)
{
cout<<"Yes"<<endl;
}
else
{
cout<<"No"<<endl;
}
}
}
#include <bits/stdc++.h>
using namespace std;
int main(){
int n;
cin>>n;
while(n--){
string s;
cin>>s;
bool f=false;
for(int i=2;i<s.size()-1;i++){
string a1,b1,a2,b2;
for(int j=0;j<i;j++) a1+=s[j];
for(int j=i;j<s.size();j++) b1+=s[j];
for(int j=i-1;j>=0;j--) a2+=s[j];
for(int j=s.size()-1;j>=i;j--) b2+=s[j];
if(b1==b2&&a1==a2){
f=true;
break;
}
}
if(f) cout<<"Yes\n";
else cout<<"No\n";
}
return 0;
}