/*
PROG:calfflac
LANG:C
ID:rongbin1
*/
#include<stdio.h>
#include<string.h>
#include<ctype.h>
#define N 20010
int main()
{
freopen("calfflac.in","r",stdin);
freopen("calfflac.out","w",stdout);
int i,j,k;
int len;
int start,end,max=0;
int map[N];
char ch,str1[N],str2[N];
i=0;
while(scanf("%c",&ch)!=EOF)
str1[i++]=ch;
str1[i]='\0';
len=strlen(str1);
for(i=0,j=0,k=0;i<len;i++)
{
if(!isalpha(str1[i])) continue;
map[k++]=i;
if(isupper(str1[i]))
str2[j++]=tolower(str1[i]);
else
str2[j++]=str1[i];
}
str2[j]='\0';
len=strlen(str2);
for(i=0;i<len;i++)
{
for(j=0;;j++)
{
if(i-j<0||i+j>=len||str2[i-j]!=str2[i+j])
{
if(max<2*j-1)
{
max=2*j-1;
start=i-j+1;
end=i+j-1;
}
break;
}
}
for(j=0;;j++)
{
if(i-j<0||i+j+1>=len||str2[i-j]!=str2[i+j+1])
{
if(max<2*j)
{
max=2*j;
start=i-j+1;
end=i+j;
}
break;
}
}
}
printf("%d\n",max);
for(i=map[start];i<=map[end];i++)
printf("%c",str1[i]);
printf("\n");
return 0;
}
Calf Flac
最新推荐文章于 2022-02-25 19:38:17 发布