Pagini recente » Cod sursa (job #405700) | Monitorul de evaluare | Borderou de evaluare (job #1570853) | Cod sursa (job #636484)
Cod sursa(job #636484)
#include <stdio.h>
#define NMAX 505
char A[NMAX];
int n,rez;
inline int lit(char x)
{
return x>='a' && x<='z';
}
inline int max(int x,int y)
{
return x>y ? x : y;
}
int main()
{
freopen("palm.in","r",stdin);
freopen("palm.out","w",stdout);
fgets(A+1,NMAX,stdin);
while (lit(A[n+1])) n++;
fgets(A+1,NMAX,stdin);
int i,st,dr;
for (i=1; i<=n; i++)
{
st=dr=i;
while (st-1>0 && dr+1<=n && A[st-1]==A[dr+1] && A[st-1]<=A[st])
st--,dr++;
rez=max(rez,dr-st+1);
if (i>1)
{
st=i-1; dr=i;
while (st-1>0 && dr+1<=n && A[st-1]==A[dr+1] && A[st-1]<=A[st])
st--,dr++;
if (A[st]==A[dr])
rez=max(rez,dr-st+1);
}
}
printf("%d\n",rez);
return 0;
}