#3WA,89分,求助!
查看原帖
#3WA,89分,求助!
1024403
AVL_DORT_MCI_BAR_CHN楼主2023/8/18 09:33
#include<bits/stdc++.h>
using namespace std;
string s;
int ma;
bool vis[35005];
int main(){
	int n;
	cin>>n;
	cin>>s;
	int k;
	for(k=1;k<n;k++){
		if(s[k]!='w') break;
	}
	for(k;k<n;k++){
		if(s[0]!=s[k]&&s[k]!='w') break;
	}
	if(k==n){
		cout<<n;
		return 0;
	}
	s=s+s+s;
	for(int i=n;i<=n+n;i++){
		memset(vis,0,sizeof(vis));
		char a,b;
		int s1=0,s2=0;
		for(int j=i-1;;j--){
			if(s[j]!='w'){
				a=s[j];
				break;
			}
		}
		for(int j=i;;j++){
			if(s[j]!='w'){
				b=s[j];
				break;
			}
		}
		for(int j=i;;j++){
			if(b!=s[j]&&s[j]!='w') break;
			vis[j]=1; vis[j-n]=1; vis[j+n]=1;
			s1++;
		}
		for(int j=i-1;;j--){
			if((a!=s[j]&&s[j]!='w')||vis[j]) break;
			vis[j]=1; vis[j-n]=1; vis[j+n]=1;
			s2++;
		}
		if(ma<s1+s2) ma=s1+s2; 
	}
	cout<<ma;
	return 0;
} 
2023/8/18 09:33
加载中...