题目描述
小民是一个很喜欢吃糖果的小孩子,他给所有的糖果进行了分类,有A~Z一共26种糖果,现在小民有一排糖果,小民很奇怪,吃糖果只喜欢吃连续的若干个,并且不希望吃到相同分类的糖果。现在小民让你帮他计算一下L的最大值使得他的一排糖果中的任意连续L个糖果都不会有相同的分类。
输入格式
输入仅一行,一行由大写字母组成的字符串,代表小民的一排糖果[输出说明]
输出仅一行,输出L的最大值。如果一排糖果都没有相同的,请输出- 1
样例输入
ABABABABABAB
样例输出
2
参考代码
#include <iostream>
#include <cstdio>
#include <string>
#define ll long long
using namespace std;
int main()
{
freopen("candy.in", "r", stdin);
freopen("candy.out", "w", stdout);
string s;
ll maxx = 0;
cin>>s;
for(ll i = 0; i < s.length(); i++)
{
ll cnt = 1;
for(ll j = i + 1; j < s.length(); j++)
{
if(s[j] - s[j - 1] != 1)
break;
cnt++;
}
maxx = max(maxx, cnt);
}
printf("%lld", maxx);
return 0;
}