10分求救
查看原帖
10分求救
1025825
Dianyao楼主2024/11/9 15:34
#include<bits/stdc++.h>

using namespace std;

int cut,ans;
int huiwen(string a){
    for(int i = 0;i < a.length() / 2;i++){
        if(a[i] != a[a.length() - 1 - i]){
            return 0;
        }
    }
    return 1;
}
int main(){
    bool d;
    int sum = 1,shengyu;
    string a,b;
    cin >> a;
    int len2 = a.length();
    for(int i = 1;;i++){        //求出可以取出多少个字符串
        if(len2 >= i){
            len2 -= i;
            ans ++;
        }else{
            if(len2 == 0){
                d = true;
                break;
            }else{
                shengyu = len2;
                ans++;
                d = false;
                break;
            }
        }
    }
    for(int i = 0;i < ans;i++){
        if(d == true){
            for(int j = 0;j < i;j++){
                b[j] = a[sum + j];
            }
        }else{
            if(i != ans - 1){
                for(int j = 0;j < i;j++){
                    b[j] = a[sum + j];
                }
            }else{
                for(int j = 0;j < shengyu;j++){
                    b[j] = a[sum + j];
                }
            }
        }
        if(huiwen(b)){
            cut++;
        }
        b = "";
        sum += i;
    }
    cout << cut << endl;
}
2024/11/9 15:34
加载中...