题目链接:http://codeforces.com/problemset/problem/733/A
【中文题意】就是找一下最长一次跳多远的距离,然后只有给定的那几个字母才可以踩在上面。
【思路分析】记录下来字符串中那几个字母的位置,注意多加两个点,一个是0,另外一个是字符串的长度+1 。
【AC代码】
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
char a[1005],b[1005];
int main()
{
while(gets(a))
{
int sum=1;
b[0]=0;
int len=strlen(a);
for(int i=0;i<len;i++)
{
if(a[i]=='A'||a[i]=='E'||a[i]=='O'||a[i]=='I'||a[i]=='U'||a[i]=='Y')
{
b[sum++]=i+1;
}
}
b[sum++]=len+1;
int maxn=0;
for(int i=1;i<sum;i++)
{
maxn=max(maxn,b[i]-b[i-1]);
}
printf("%d\n",maxn);
}
return 0;
}