solution-cf1619a
简单题
思路
把一个字符串拆分成两个完全一样的字符串,则拆分出来的字符串长度相等。所以如果字符串长度 $n$ 为奇数,则肯定不行。 如果 $n$ 为奇数,则判断 $1$ ~ $n/2$ 和 $n/2+1$ ~ $n$ 这两段字符串是否相等即可。
代码
#include<bits/stdc++.h>
using namespace std;
int main(){
int t;
cin>>t;
while(t--){
string s;
cin>>s;
int l = s.length();
if(l%2) {
cout<<"NO"<<endl;
continue;
}
bool flag = true;
for(int i = 0; i < l/2; i++){
if(s[i] != s[l/2+i]){
cout<<"NO"<<endl;
flag = 0;
break;
}
}
if(flag)
cout<<"YES"<<endl;
}
return 0;
}