前缀和+字符串处理即可不懂DP者的福利
#include <bits/stdc++.h>
using namespace std;
int vis[100011999];
signed main() { //稍微优化下
ios::sync_with_stdio(0); //稍微优化下,真正赛场上还是建议scanf的
int sum = 10000000;
int ans = 0;
char x;
int i = 1;
while(cin>>x) {
if(x=='G') {
sum++;
} else if(x=='R'){
sum--;
}
if(sum==10000000) { //没发生变化(平衡)
ans=i;
} else if(vis[sum]==0) {
vis[sum] = i; //记录结果
} else {
ans = max(ans,i-vis[sum]); //计算答案
}
i++;
}
std::cout<<ans<<endl;
}