解题思路:
注意事项:
参考代码:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int findchar(char a[],int i,int j)
{
int len,judge=0;
len=j-i;
if(len%2==1)
{
for(int t=0; t<(len+1)/2; t++)
{
if(a[i+t]!=a[j-t])
{
return 0;
}
}
return (j-i+1);
}
else
{
for(int t=0; t<len/2; t++)
{
if(a[i+t]!=a[j-t])
{
return 0;
}
}
}
return (j-i+1);
}
int main()
{
int max=0,len;
int i=0;
char a[1024];
char *b[100];
while(scanf("%[^\n]",a)!=EOF){
getchar();
len=strlen(a);
b[i]=(char*)malloc(sizeof(char)*len);
strcpy(b[i],a);
i++;
}
int len_str;
for(int m=0;m<i;m++){
len_str=strlen(b[m]);
for(int j=0;j<len_str;j++){
for(int k=j;k<len_str;k++){
if((findchar(b[m],j,k)>max)){
max=findchar(b[m],j,k);
}
}
}
printf("%d\n",max);
max=0;
}
return 0;
}
0.0分
2 人评分