UVa 401 Palindromes(简单字符串)
来源:互联网 发布:软件无偿使用合同 编辑:程序博客网 时间:2024/05/19 01:58
简单的判断是否是回文串、镜像串,然后自己写的真费劲,没逃掉刘汝佳的书,这里的代码很有技巧性,特别值得学习,额,其实他书上的代码都很精简
CharacterReverseCharacterReverseCharacterReverseAAMMYYB N Z5C OO11D P 2SE3Q 3EF R 4 G S25ZHHTT6 IIUU7 JLVV88K WW9 LJXX 这个要用一维数组存储
题意:
思路:
/*UVa 401 Palindromes题意:输入一个字符串,判断其是否是回文串或者镜像串输入的字符可能会有不合法的镜像字符,但是保证没有0,其他所有字母和9个数字思路:没逃掉刘汝佳的书,将镜像的字符存在一个数组里面,将输出的字符串存在一个数组里面,不过确实挺好用,然后就是简单的首位循环判断了*/#include<iostream>#include<cstdio>#include<cstring>#include<ctype.h>using namespace std;char rev[40]="A 3 HIL JM O 2TUVWXY51SE Z 8 ";char judge(char c)//相应的镜像符号{ if(isalpha(c))//如果是字母 return rev[c-'A']; return rev[c-'0'+25];//如果是数字,+25字母}int main(){ char output[4][30]={"is not a palindrome.","is a regular palindrome.", "is a mirrored string.","is a mirrored palindrome."};//巧妙,省事 char str[25]; while(scanf("%s",str)!=EOF) { int len=strlen(str); int flag1=1,flag2=1; for(int i=0;i<(len+1)/2;i++) { if(str[i]!=str[len-i-1])//是否回文 flag1=0; if(judge(str[i])!=str[len-i-1])//是否镜像 flag2=0; } //竟然注释掉cout<<flag1<<" "<<flag2<<endl; printf("%s -- %s\n\n",str,output[flag2*2+flag1]); } return 0;}/*NOTAPALINDROMEISAPALINILAPASI2A3MEASATOYOTA*/
0 0
- UVa 401 Palindromes(简单字符串)
- UVA 401 - Palindromes(字符串)
- uva 401 Palindromes //字符串
- UVA 401 Palindromes 字符串
- uva 401 Palindromes(字符串处理)
- uva 401 Palindromes(字符串回文处理)
- UVa 401 Palindromes (字符串匹配)
- Palindromes - UVa 401 字符串处理
- UVa 401 Palindromes(字符串,回文)
- uva 401 Palindromes(基本的字符串处理)
- UVA 401 (暑假-字符串(1) -A - Palindromes)
- UVa 401 Palindromes(镜像回文字符串)
- 字符串训练 ------- UVA 题目401 - Palindromes
- Palindromes //简单字符串
- UVa 401 Palindromes(回文词)
- UVA 401-- Palindromes(串处理)
- UVA - 401 Palindromes (回文串)
- 回文词(Palindromes, UVa 401)
- ItemTouchHelper源码解析
- phpStorm支持CodeIgniter代码提示/自动完成
- 常用的第三方库
- 透过面试题,洞察Hbase 核心知识点
- hdu 1824 Let's go home【2-SAT------强连通Tarjan】
- UVa 401 Palindromes(简单字符串)
- Linphone探索:6 . Linphone用户注册
- react思维导图
- Android 属性动画(一)
- android 开机自动运行程序
- 算法杂货铺——分类算法之决策树(Decision tree)
- _tmain()和main()的区别
- Rxjava(2.操作符)
- 开始学习kamailio