Palindromes _easy version
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 19946 Accepted Submission(s): 12465
Problem Description
“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。请写一个程序判断读入的字符串是否是“回文”。
Input
输入包含多个测试实例,输入数据的第一行是一个正整数n,表示测试实例的个数,后面紧跟着是n个字符串。
Output
如果一个字符串是回文串,则输出"yes",否则输出"no".
Sample Input
4
level
abcde
noon
haha
Sample Output
yes
no
yes
no
Author
lcy
解题报告:
水题。得到字符串长度,比较首末元素是否相当,若不相等,直接no;一直比较到元素交叉,则输出yes
1 #include<stdio.h> 2 #include<string.h> 3 char buf[1024]; 4 int main() 5 { 6 int n, len, i, j; 7 scanf("%d", &n); 8 getchar(); 9 while(n--) 10 { 11 gets(buf); 12 len = strlen(buf); 13 i = 0, j = len-1; 14 while(i <= j) 15 { 16 if(buf[i] == buf[j]) 17 { 18 i++; 19 j--; 20 } 21 else 22 { 23 printf("no "); 24 break; 25 } 26 } 27 if(i > j) 28 printf("yes "); 29 30 } 31 return 0; 32 }