Cod sursa(job #636613)

Utilizator gramatovici_paulGramatovici Paul gramatovici_paul Data 19 noiembrie 2011 21:47:50
Problema PalM Scor 30
Compilator cpp Status done
Runda .com 2011 Marime 0.69 kb
#include <iostream>
#include <fstream>
#include <cstring>

using namespace std;

ifstream in("palm.in");
ofstream out("palm.out");

char s[1000];

int main()
{
    int d=0,c=0,i,j,max=0,len;
    in.getline(s+1,1000);
    len=strlen(s+1);
    s[len+1]=s[0]='z'+1;

    for(i=1;i<=len;++i)
    {
        if(s[i]>=s[i-1])
            c++;
        else
            c=0;
        d=0;
        while(s[i+d]>=s[i+d+1])
            d++;
        for(j=0;j<=d && j<=c && s[i-j]==s[i+j];j++);
        if(j*2-1>max)
            max=j*2-1;
        for(j=0;j<=d && j<=c+1 && s[i-j]==s[i+j+1];j++);
        if(2*(j-1)>max)
            max=(j-1)*2;
    }
    out<<max;
    return 0;
}