本文主要是介绍天勤模拟赛1 最爱回文串,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
土豪大学的高富帅实验室里有一个回文帝,名叫小明。小明每次看到一个字符串的时候总喜欢看看它是不是回文串,如果这个字符串不是回文串的话,他就会将这个字符串里的字符重新排列,看看能不能构成回文串。
现在小明想让你写一个程序来帮助他实现上述过程。
输入格式
输入包含多组测试数据。每组输入包含一个字符串,长度不超过5,不包含空格等空白符。
提示:本题数据量不大,不必想复杂了。
输出
对于每组输入,如果输入的字符串本身就是回文串,或者将这个字符串里的字符重新排列后可以构成回文串,则输出Yes,否则输出No。
样例输入
qq
abc
aab
样例输出
Yes
No
Yes
#include <stdio.h>
#include <string.h>int main()
{char str[10];while(scanf("%s", str) != EOF){int len = strlen(str);int num[150] = {0}, i, count = 0;for(i = 0; i < len; i++){num[str[i]]++;if(num[str[i]] % 2 == 0)count++;}if(len == 1) printf("Yes\n");else if(len == 2){if(str[0] != str[1])printf("No\n");elseprintf("Yes\n");}else if(len == 3){if(count >= 1)printf("Yes\n");elseprintf("No\n");}else if(len == 5 || len == 4){if(count >= 2)printf("Yes\n");elseprintf("No\n");}}return 0;
}
这篇关于天勤模拟赛1 最爱回文串的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!