Cod sursa(job #2181805)

Utilizator NToniBoSSNicolae Tonitza NToniBoSS Data 21 martie 2018 20:59:05
Problema PalM Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.87 kb
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
char v[505];
int main()
{
    int n,rez,i,a,b;
    freopen("palm.in","r",stdin);
    freopen("palm.out","w",stdout);
    gets(v);
    n=strlen(v)-1;
    rez=1;
    for(i=1; i<=n-1; i++)
    {
        a=i-1;
        b=i+1;
        while(a>=0 && b<=n)
            if(v[a]==v[b] && v[a]<=v[a+1])
                a--,b++;
            else
                break;
        rez=max(rez,b-a-1);
    }
    for(i=0; i<n; i++)
    {
        a=i;
        b=i+1;
        if(v[a]==v[b])
        {
            rez=max(rez,2);
            a--;
            b++;
            while(a>=0 && b<=n)
            if(v[a]==v[b] && v[a]<=v[a+1])
                a--,b++;
            else
                break;
            rez=max(rez,b-a-1);
        }
    }
    printf("%d",rez);

    return 0;
}