Uva题目401总结
来源:互联网 发布:malware defender知乎 编辑:程序博客网 时间:2024/05/22 14:47
这是一道关于运用常量表对代码进行简化操作的题目,对于题目的理解要求有以下几点:输入一个字符串1、判断其是否为回文串2、判断其是否为镜像串;结果:如果是回文串又是镜像串输出“ -- is a mirrored palindrome.”,如果是只是回文串,则输出“ -- is a regular palindrome. ”,如果只是镜像串,则输出“ -- is a mirrored string.”,如果不是回文串,也不是镜像串,则输出“ -- is not a palindrome.”
其中需要注意字符‘o'和数值'0'一样的;
判断是否回文:
int isp(char a[]){int len=strlen(a)-1;for(int i=0;i<len;i++,len--)if(a[i]!=a[len])return 0;return 1;}
判断是否镜像:先找出有镜像的字符(A、E、H、I、L、J、M、O、S、T、U、V、W、X、Y、Z)≯(A、3、H、I、J、L、M、O、2、T、U、V、W、X、Y、5)这个数组要实现,如果输入一个字符可以找到它的镜像字符;例如输入E之后转换为3;输入3转换为E;
我们可以把这个数组分成两类,一类为字符型数组,一类为数值型数组;在字符型数组中以减A作为位置,数值型数组以减1作为位置。
char a[]={'A',' ',' ',' ','3',' ',' ','H','I','L',' ','J','M',' ','O',' ',' ',' ','2','T','U','V','W','X','Y','5'};int b[]={'1','S','E',' ','Z',' ',' ','8',' '};int ism(char s[]){int len=strlen(s)-1,temp=0;char t[100];for(int i=0;i<len;i++,len--){if(s[i]>='A'&&s[i]<='Z'){temp=s[i]-'A';t[i]=a[temp];}else{temp=s[i]-'1';t[i]=b[temp];}if(s[i]!=s[len])return 0;}return 1;}
通过判断返回值,来判断字符串的类型;
- Uva题目401总结
- UVA 题目401 - Palindromes
- 字符串训练 ------- UVA 题目401 - Palindromes
- UVA 题目401 - Palindromes(回文词)
- UVA 题目401 - Palindromes JAVA版
- uva题目分类
- UVA dp题目汇总
- UVA题目分类
- UVA 初学者题目
- UVa推荐题目
- UVA题目分类索引
- UVA 题目难度 分级
- UVA 1664(思路题目)
- UVA题目分类
- uva题目笔记
- 题目来源UVA
- 题目总结
- 题目总结
- insmod: no symbol version for module_layout
- CLR学习笔记--Attribute
- Android获取屏幕高度、状态栏高度、标题栏高度
- Linux下的多线程同步编程入门实例
- Android-- FragmentStatePagerAdapter分页
- Uva题目401总结
- Linux服务器调优
- source insight 解决自动缩进 和 TAB键=4个SPACE
- Android开发 之 编译Android出错:Unable to execute dex: Java heap space
- ibatis和hibernate的区别 .
- USB gadget设备驱动解析(3)
- Xcode 证书生成、设置、应用
- arcgsi之修复Shape区文件中的空洞
- SMTP协议分析