UnknowOne @ 2024-10-02 20:09:39
#include<iostream>
#include<cstring>
using namespace std;
string s;
int b[100010];
int main(){
cin>>s;
for(int i=0;i<s.size();i++){
if(s[i]=='G'){
b[i]=b[i-1]+0;
}
else{
b[i]=b[i-1]+1;
}
}
for(int i=s.size()-1;i>=0;i--){
if(i%2==0){
for(int j=0;j<s.size()-i+1;j++){
if(b[i+j-1]-b[j-1]==i/2){
cout<<i;
return 0;
}
}
}
}
cout<<0;
}
by UnknowOne @ 2024-10-02 21:12:07
#include<iostream>
#include<cstring>
using namespace std;
string s;
int g,r,ans;
int main(){
cin>>s;
for(int i=0;i<s.size();i++){
for(int j=i+1;j<s.size();j++){
g=0;
r=0;
for(int k=i;k<=j;k++){
if(s[k]=='G'){
g++;
}
else{
r++;
}
if(g==r){
ans=max(ans,g*2);
}
}
}
}
cout<<ans;
}
难绷,暴力过的,亏我还想 摸 了1个小时的前缀和 鱼