/*
bwwwbwwbw
wwbwwwbwb
不管从哪里断开翻转。翻转后的串再整体翻转一定是2s的子串
*/
#include<bits/stdc++.h>
using namespace std; int len;
char s[];
int main(){
cin>>s+;
int len=strlen(s+);
if(len==){
puts("");
return ;
}
for(int i=len+;i<=len*;i++)
s[i]=s[i-len];
int ans=,l=;
for(int i=;i<=len*;i++){ if(s[i]!=s[i-])
l++;
else ans=max(ans,l),l=;
// cout<<l<<'\n';
}
if(ans==)ans=l;
printf("%d\n",min(ans,len)); }
相关文章
- 《剑指offer》第二十三题(链表中环的入口结点)
- 《C++设计新思维》勘误,附C++14新解法
- C#LeetCode刷题之#206-反转链表(Reverse Linked List)
- Leetcode 206题 反转链表(Reverse Linked List)Java语言求解
- [LC]237题 Delete Node in a Linked List (删除链表中的节点)(链表)
- 牛客网Java刷题知识点之什么是cookie、什么是session、cookie和session有什么区别
- 笔试算法题(44):简介 - 动态规划(Dynamic Programming)
- C语言考试第一题详细过程
- 复旦高等代数I(19级)每周一题
- CDOJ 1277 智商杯考试 每周一题 div2 二分+数学