听取RE声一片

B4039 [GESP202409 三级] 回文拼接

limoxuan0712 @ 2025-01-12 18:48:56

Help! Help!

#include<bits/stdc++.h>
using namespace std;
bool hwc(string a){
    string b;
    for(int i=a.size()-1;i>=0;--i){
        b+=a[i];
    }
    if(a==b)return true;
    else return false;
}
int zxyj(string str){
    for(int j=2;j<=str.size()-2;j++){
        string a=str.substr(0,j);
        string b=str.substr(j,str.size()-1);
        if(hwc(a) && hwc(b)){
            cout<<"Yes"<<endl;
            return 0;
        } 
    }
    cout<<"No"<<endl;
    return 0;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        string str;
        cin>>str;
        zxyj(str);
    }
    return 0;
}

by limoxuan0712 @ 2025-01-12 18:56:33

我又双叒叕自己在1分钟内发现问题后解决了~~ 好尴尬~~

AC代码:

#include<bits/stdc++.h>
using namespace std;
bool hwc(string a){
    string b;
    for(int i=a.size()-1;i>=0;--i){
        b+=a[i];
    }
    if(a==b)return true;
    else return false;
}
int zxyj(string str){
    if(str.size()==1) {
        cout<<"No"<<endl;
        return 0;
    }
    for(int j=2;j<=str.size()-2;j++){
        string a=str.substr(0,j);
        string b=str.substr(j,str.size()-1);
        if(hwc(a) && hwc(b)){
            cout<<"Yes"<<endl;
            return 0;
        } 
    }
    cout<<"No"<<endl;
    return 0;
}
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        string str;
        cin>>str;
        zxyj(str);
    }
    return 0;
}

|