GDUFE ACM-1028 回文串

Posted ruoruoruoruo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了GDUFE ACM-1028 回文串相关的知识,希望对你有一定的参考价值。

题目:http://acm.gdufe.edu.cn/Problem/read/id/1028

 

Problem Description:

             “回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。

Input:

输入包含多个测试实例,输入数据的第一行是一个正整数n,表示测试实例的个数,后面紧跟着是n个字符串。

Output:

如果一个字符串是回文串,则输出"yes",否则输出"no".

Sample Input:

4
level
abcde
noon
haha

Sample Output:

yes
no
yes
no

思路:先判断这个字符串有多长,再把字符串的第一个字母与最后一个字母对比,我用了两个字符串,但感觉并不需要这么麻烦,有点多余,但是不想改啦(捂脸)
复杂度分析:也不是没很难呀,用了字符串,while,for,if


代码:

#include<stdio.h>
int main()
{
int n,i,j,b;
char ch[100],a[100];
while(scanf("%d",&n)!=EOF)
{
scanf("%s",ch);
i=0;
while(ch[i]!=‘\0‘)
{
i=i+1;
}
for(j=0;j<i;j++)
{
a[j]=ch[i-1];
i=i-1;
}
for(b=0;b<j;b++)
{
if(a[b]!=ch[b])
break;
}
if(b==j)
printf("yes\n");
else printf("no\n");
}
return 0;
}

以上是关于GDUFE ACM-1028 回文串的主要内容,如果未能解决你的问题,请参考以下文章

131. 分割回文串

算法竞赛入门经典 例题 3-4 回文串

最长回文字串暴力

CSDN|每日一练最长回文串

CSDN|每日一练最长回文串

添加字符判断是否为回文串