比赛 2024暑假C班集训C 评测结果 TTTTTTTTTT
题目名称 W&B 最终得分 0
用户昵称 dream 运行时间 19.991 s
代码语言 C++ 内存使用 28.74 MiB
提交时间 2024-07-12 10:09:24
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int t;
int main(){
	freopen("silly.in","r",stdin);
	freopen("silly.out","w",stdout);
	cin>>t;
	while(t--){
		string str="";
		int n;
		cin>>n;
		int W=0;
		int B=0;		
		while(n--){
			int o;
			char c;
			cin>>o>>c;
			if(c=='W')
				W+=o;
			if(c=='B')
				B+=o;
			for(int i=1;i<=o;i++){
				str.push_back(c);
			}
		}
//		cout<<str<<"\n";
		if(W==0||B==0){
			cout<<str.size()<<"\n";
			continue;
		}
		int ans=1;
		for(int i=1;i<str.size();i++){
			for(int j=1;j<str.size();j++){
				if(__gcd(i,j)!=1){
					continue;
				}
				int res=0;
				for(int q=0;q<str.size();q++){
					for(int w=q;w<str.size();w++){
						int ww=0,ee=0;
						for(int e=q;e<=w;e++){
							if(str[e]=='W'){
								ww++; 
							}
							else{
								ee++;
							}
						}
//						cout<<i<<" "<<j<<" "<<ww<<" "<<ee<<" "<<q<<" "<<w<<"\n";
						if(ee==0){
							continue;
						}
						if(ww/__gcd(ww,ee)==i){
							if(ee/__gcd(ww,ee)==j){
								q=w;
								res++;
							}
						}
					}
				}
				ans=max(res,ans);
			}
		}
		cout<<ans<<"\n";
	}
	return 0;
}