萌新求助,样例都没过。
查看原帖
萌新求助,样例都没过。
162084
thomas_zjl楼主2021/7/5 18:32
#include<bits/stdc++.h> 
using namespace std;
int main(){
	int n;
	char a[351];
	cin>>n;
	cin>>a+1;
	int ans=0;
	for(int i=1;i<=n;i++){
		int x=0,y=0;
		if(a[i]=a[i+1])
			continue; 
		char xx=a[i+1];
		char yy=a[i];
		if(xx!='w'){
			for(int j=i+1;;j++){
				if(a[j]==xx)
					x++;
				else if(a[j]=='w')
            		x++;
				else if(a[j]!=xx)
					break;
				if(j==n)
					j=1;
			} 
		}
		else{
			int x1=0,x2=0,x3=0;
			for(int j=i+1;;j++){
				if(a[j]==xx)
					x1++;
				else if(a[j]=='w')
            		x1++; 
				else if(a[j]!=xx)
					break;
				if(j==n)
					j=1;
			}
			xx='r';
			for(int j=i+1;;j++){
				if(a[j]==xx)
					x2++;
				else if(a[j]=='w')
            		x2++;
				else if(a[j]!=xx)
					break;
				if(j==n)
					j=1;
			} 
			xx='b';
			for(int j=i+1;;j++){
				if(a[j]==xx)
					x3++;
				else if(a[j]=='w')
            		x3++;
				else if(a[j]!=xx)
					break;
				if(j==n)
					j=1;
			} 
			x=max(x1,max(x2,x3));
		}
		if(yy!='w'){
			for(int j=i;;j--){
				if(a[j]==xx)
					y++;
				else if(a[j]=='w')
            		y++;
				else
					break;
				if(j==1)
					j=n;
			}
		}
		else{
			int x1=0,x2=0,x3=0;
			yy='w';
			for(int j=i;;j--){
				if(a[j]==yy)
					x1++;
				else if(a[j]=='w')
            		x1++;
				else if(a[j]!=yy)
					break;
				if(j==1)
					j=n;
			}
			yy='r';
			for(int j=i;;j--){
				if(a[j]==yy)
					x2++;
				else if(a[j]=='w')
            		x2++;
				else if(a[j]!=yy)
					break;
				if(j==1)
					j=n;
			} 
			yy='b';
			for(int j=i;;j--){
				if(a[j]==yy)
					x3++;
				else if(a[j]=='w')
            		x3++;
				else if(a[j]!=yy)
					break;
				if(j==1)
					j=n;
			} 
			y=max(x1,max(x2,x3));
		}
		ans=max(ans,x+y);
	} 		
	if(ans==0){
		cout<<n;
		return 0;
	}
	cout<<ans;
}

kk

2021/7/5 18:32
加载中...