Pagini recente » Cod sursa (job #2584303) | Cod sursa (job #3189572) | Cod sursa (job #446807) | Cod sursa (job #1963073) | Cod sursa (job #635815)
Cod sursa(job #635815)
#include <cstdio>
#include <cstring>
int main()
{
int n,i,j,a=1,b,max=1;
char s[505];
freopen("palm.in","r",stdin);
freopen("palm.out","w",stdout);
scanf("%s",s);
n=strlen(s);
for (i=1;i<n;++i)
{
if (s[i]>s[i-1])
++a; else
if (s[i]<s[i-1])
{
for (j=1;j<a;++j)
if (s[i+j-1]!=s[i-1-j]) break;
if ((j-1)*2+1>max) max=(j-1)*2+1;
a=1;
}
else
{
--a;
for (b=2;(i<n) && (s[i+1]==s[i]);++i) ++b;
if (b>max) max=b;
if (s[i+1]<s[i])
{
for (j=1;j<=a;++j)
if (s[i+j]!=s[i-b-j+1]) break;
if (b+2*(j-1)>max) max=b+2*(j-1);
a=1;
} else
a+=b;
}
}
printf("%d\n",max);
return 0;
}