求助!求助!全wa

P2697 宝石串

youth191954 @ 2024-04-15 13:57:25

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std; 
const int mx=1e6+10;
string s;
int a[mx],ans=-1000,sam[mx];
int main(){
    cin>>s;
    for(int i=0;i<s.size();i++){
        if(s[i]=='G')a[i]+=1;
        else a[i]-=1;
    }
    for(int i=0;i<s.size();i++)sam[i]=a[i]+sam[i-1];
    for(int i=0;i<s.size();i++){
        for(int j=i+1;j<=s.size()+1;j++){
            if((sam[j]-sam[i-1])==0&&(j-i+1)>ans)ans=j-i+1;
        }
    }
    cout<<ans/2;
    return 0;
}

by wangtianhao0609 @ 2024-09-22 17:08:13

@youth191954 \

#include<bits/stdc++.h>
using namespace std;
string s,x;
int maxn;
bool pd(string a){
    int s1=0,s2=0;
    for (int i=0;i<a.size();i++)
    {
        if (a[i]=='R')
        {
            s1++;
        }
        else
        {
            s2++;
        }
    }
    if (s1==s2)
    {
        return true;
    }
    return false;
}
int main(){
    cin >>s;
    for (int i=0;i<s.size();i++)
    {
        for (int j=i+2;j<s.size();j++)
        {
            x="";
            for (int k=i;k<=j;k++)
            {
                x+=s[k];
            }
            if (pd(x))
            {
                int y=x.size();
                maxn=max(y,maxn);
            }
        }
    }
    cout <<maxn;
    return 0;
}

|