寒假Day50:CodeForces1324CFrog Jumps思维

CodeForces - 1324C 

题意:

给出字符串1-len

一只青蛙需要从0位置跳到len+1的位置

每次跳到L需要往回 L-d 跳,跳到R就继续往右跳 R+d

问d最大是多少

思路:d最大取决于任意两个R之间的最大距离,因为一定会跳到len+1的位置,所以应该在最后一位加上R

#include <bits/stdc++.h>
using namespace std;

char a[200020];

int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        scanf("%s",a+1);
        int len=strlen(a+1);
        a[len+1]='R';
        int sum=0,k=0;
        for(int i=1;i<=len+1;i++)
        {
            if(a[i]=='R')
            {
                sum=max(sum,i-k);
                k=i;
            }
        }
        cout<<sum<<endl;
    }
    return 0;
}
原文地址:https://www.cnblogs.com/OFSHK/p/12494771.html