Uva 401 palindrom
2015-06-04 07:23
267 查看
//
现在看这道题 刘汝佳的解法也很经典
//
现在看这道题 刘汝佳的解法也很经典
//
#include<stdio.h> #include<string.h> #include<ctype.h> const char* rev = "A 3 HIL JM O 2TUVWXY51SE Z 8 "; const char *msg[] = {"not a palindrome", "a regular palindrome", "a mirrored string", "a mirrored palindrome"}; char r(char ch) { if(isalpha(ch)) return rev[ch - 'A']; return rev[ch - '0' + 25]; } int main() { char s[30]; while(scanf("%s", s)==1) { int len = strlen(s); int p = 1, m = 1; for(int i = 0; i < (len+1)/2; i++) { if(s[i] != s[len-1-i]) p = 0; if(r(s[i]) != s[len-1-i]) m = 0; } printf("%s -- is %s.\n\n", s, msg[m*2+p]); } return 0; }
相关文章推荐
- 递归打印旋转正方形
- Skype for Business Server 2015-07-边缘服务器-1-安装-先决条件
- 数字自然读法
- OSChina 周四乱弹 —— 染上这病,你注定孤独终老
- 计算机系统原理之CPU中断技术
- bind server.c
- udacity android 学习笔记: lesson 4 part a
- mysql初识之数据文件及其他文件
- hdfs指令集
- PDO and MySQLi which is better
- socket通信
- 转:devise使用
- udacity android学习笔记: lesson 3
- PHP use MySQLi
- Construct Binary Tree from Inorder and Postorder Traversal
- 一步一步跟我学习lucene(18)---lucene索引时join和查询时join使用示例
- Skype for Business Server 2015-06-持久聊天服务器-3-配置
- udacity 之 android学习笔记:lesson 2
- Skype for Business Server 2015-06-持久聊天服务器-2-部署
- 微软发布的Win10开发者指南视频