uva 401.Palindromes
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=342
题目意思:给出一段字符串(大写字母+数字组成)。判断是否为回文串 or 镜像串 or 回文镜像串 or 什么都不是。每个字母的镜像表格如下
Character | Reverse | Character | Reverse | Character | Reverse |
A | A | M | M | Y | Y |
B | N | Z | 5 | ||
C | O | O | 1 | 1 | |
D | P | 2 | S | ||
E | 3 | Q | 3 | E | |
F | R | 4 | |||
G | S | 2 | 5 | Z | |
H | H | T | T | 6 | |
I | I | U | U | 7 | |
J | L | V | V | 8 | 8 |
K | W | W | 9 | ||
L | J | X | X |
注意是没有数字0的哦。(该题,数字 0 与字母 O 看成是一样的)
1 #include <iostream> 2 #include <cstdio> 3 #include <cstdlib> 4 #include <cstring> 5 using namespace std; 6 7 const int maxn = 1000 + 5; 8 char mirror[] = "A 3 HIL JM O 2TUVWXY51SE Z 8 "; 9 const char *msg[4] = {" -- is not a palindrome.", " -- is a regular palindrome.", " -- is a mirrored string.", " -- is a mirrored palindrome."}; 10 char s[maxn]; 11 12 char change(char ch) 13 { 14 if (ch >= 'A' && ch <= 'Z') 15 return mirror[ch-'A']; 16 return mirror[ch-'0'+25]; 17 } 18 19 int main() 20 { 21 #ifndef ONLINE_JUDGE 22 freopen("in.txt", "r", stdin); 23 #endif // ONLINE_JUDGE 24 25 while (scanf("%s", s) != EOF) { 26 int len = strlen(s); 27 int p = 1, m = 1; 28 29 for (int i = 0; i < len; i++) { 30 if (s[i] != s[len-i-1]) p = 0; 31 if (change(s[i]) != s[len-i-1]) m = 0; 32 } 33 printf("%s%s\n\n", s, msg[p+m*2]); 34 } 35 return 0; 36 }
转载于:https://www.cnblogs.com/windysai/p/5348481.html
uva 401.Palindromes相关推荐
- UVa 401 - Palindromes
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=96&page=s ...
- UVaOJ 401 Palindromes
原题: http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=6&page ...
- 【鬼畜】UVA - 401每日一题·猛男就是要暴力打表
管他什么rev数组,msg数组简化代码 #define _CRT_SECURE_NO_WARNINGS #include <cmath> #include <iostream> ...
- 紫书《算法竞赛入门经典》
紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...
- SUPERBIN技术周刊第6期
本技术周刊是以周为单位作为里程碑,记录一个程序员视角下的所见,所学,所想.兴趣领域包括:数学,算法,图形,图像,音视频,AI,游戏,软件开发技术,操作系统,开源,以及生活杂记等."不积跬步, ...
- UVA401 Palindromes【字符串】
Palindromes UVA - 401 题目传送门 题目大意:给你一个字符串,判断其是回文串还是镜像串. AC代码: #include <cstdio> #include <io ...
- 提取了下刘汝佳推荐的题号...
今天闲来没事上uva oj提取了下刘汝佳推荐的acm题号,原始数据如下: Volume 0. Getting Started 10055 - Hashmat the Brave Warrior ...
- 《算法竞赛入门经典》Chap3
<算法竞赛入门经典(第二版)>第三章 思考题 题目1 必要的存储量 题目2 统计字符1的个数 示例程序 程序3-1 逆序输出 程序3-2 开灯问题 程序3-3 蛇形填数 程序3-4 竖式问 ...
- 初学者acm的练习题指南
上机练习题参考题 忘了在哪找的啦~~希望对大家有帮助呦 <!--[if !supportLists]-->1. <!--[endif]-->Programming Bas ...
最新文章
- 重磅!2020 中国高校毕业生月薪排名:清华第一,24所高校过万
- 微软亚研院20周年独家撰文:数据智能的现在与未来
- 2416开发板上网卡芯片lan9220的时序配置问题
- java WebSocket实现一对一消息和广播消息Demo
- iOS new 和 alloc的区别
- NYOJ_5739最大岛屿(河南省第八届acm程序设计大赛)
- 配置虚拟目录的方式(Linux下/windows下)
- [蓝桥杯]算法提高 金属采集(树形dp)
- Java千百问_03基本语法(002)_java都有哪些关键字
- matlab handle plot
- 概率论符号_考研概率论知识点总结1
- linux驱动中使用定时器的设置
- python实验收获与反思 100字_期中考试总结与反思100字4篇
- 鼎捷t100架构_浅谈鼎捷T100 ERP的设计器使用规范
- java线程倒计时_Java核心知识点学习----多线程 倒计时记数器CountDownLatch和数据交换的Exchanger...
- Matlab突然闪退 出现Fatal Error On Startup解决办法
- GPU与CPU的区别
- mathmatica矩阵的运算,相乘,转置,求逆矩阵
- 二维码怎么制作?手把手教你制作生成
- Java回炉学习(七)