解题思路:稍微有些麻烦了,但很好理解

注意事项:

参考代码:

#include<stdio.h>

#include<string.h>

int m,x,y;

int judge(char s1[1000]) {

int i,j,p,q,k;

x=y=0;

for(i=0; i<m; i++) {


for(j=m-1; j>=i+1; j--) {

char b[1000]= {0},c[1000]= {0};

if(s1[i]==s1[j]) {

p=q=0;

for(k=i; k<=j; k++)

b[p++]=s1[k];

for(k=j; k>=i; k--)

c[q++]=s1[k];

if(strcmp(b,c)==0) {

x=j+1-i;

if(x>y)

y=x;

}


}


}

}

return 1;

}

int main() {

char s[1000];

while(~scanf("%s",s)) {

m=strlen(s);

if(m==1)

printf("1\n");

else {

if(judge(s))

printf("%d\n",y);

}


}

}


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论