坏掉的项链题解!!!
2024-09-08 21:19:57
发布于:北京
23阅读
0回复
0点赞
#include <iostream>
#include <algorithm>
using namespace std;
string a;
int f(int x){
int s=0;
char a1=a[x];
char b2=a[x+1];
for(int i=x;;i--){
if(a[i]==a1)s++;
else if(a[i]=='w') s++;
else break;
}
for(int i=x+1;;i++){
if(a[i]==b2) s++;
else if(a[i]=='w') s++;
else break;
}
return s;
}
int main(){
int ans,n;
ans=-1;
cin>>n;cin>>a;
a=a+a+a;
for(int i=n;i<2*n;i++){
if(a[i]==a[i+1]) continue;
if(a[i]=='w'){
a[i]='r';
ans=max(ans,f(i));
a[i]='b';
ans=max(ans,f(i));
a[i]='w';
}
ans=max(ans,f(i));
}
ans=min(ans,n);
if(ans==-1) ans=n;
cout<<ans<<endl;
return 0;
}
全部评论 2
顶
2024-09-08 来自 北京
0顶
2024-09-08 来自 北京
0
有帮助,赞一个