/*******************************************
Problem:UVA OJ-401 Palindromes
Date:11/07/2014
Author:Praker
********************************************/
#include <stdio.h>
#include <string.h>
#define maxn 10000
char str[maxn];
char ch_1[14]="AHIMOTUVWXY18";
char ch[22]="AEHILJMOSTUVWXYZ12358";
char chRe[22]="A3HILJMO2TUVWXY51SEZ8";
int is_P(char* str,int n);
int is_M(char* str,int n);
int hasRe_1(char c);
int hasRe(char c);
char getRe(char c);
int main()
{
while(gets(str)!=NULL)
{
int len=strlen(str);
if(len==0)
break;
int isMirro=0,isPalin=0;
int i=0;
isPalin=is_P(str,len);
isMirro=is_M(str,len);
if(isPalin==0)
{
if(isMirro==0)printf("%s--is not a palindrome.\n\n",str);
else printf("%s--is a mirrored string.\n\n",str);
}
else
{
if(isMirro==0)printf("%s--is a regular palindrome.\n\n",str);
else printf("%s--is a mirrored palindrome.\n\n",str);
}
}
}
int is_P(char* str,int n)
{
int i;
for(i=0;i<n/2;i++)
if(str[i]!=str[n-1-i])
return 0;
return 1;
}
int is_M(char* str,int n)
{
if(n==1)
{
if(hasRe_1(str[0]))
return 1;
else
return 0;
}
for(int i=0;i<n/2;i++)
{
if(hasRe(str[i]))
{
char t=getRe(str[i]);
if(t!=str[n-1-i])
return 0;
}
else
return 0;
}
if(n%2!=0)
{
int x=n/2;
if(hasRe_1(str[x]))
return 1;
else
return 0;
}
return 1;
}
int hasRe_1(char c)
{
int has=0;
for(int i=0;i<13;i++)
if(ch_1[i]==c)
has=1;
return has;
}
int hasRe(char c)
{
int has=0;
for(int i=0;i<22;i++)
if(ch[i]==c)
has=1;
return has;
}
char getRe(char c)
{
for(int i=0;i<22;i++)
if(ch[i]==c)
return chRe[i];
}相关推荐
基于STM32的Keil5代码自动补全设置操作指南
掌握Keil5代码自动补全设置技巧,提升STM32开发效率。通过合理配置编辑器选项,实现智能提示与语法补全,让嵌入式编程更流畅,尤其适合使用keil5代码自动补全设置的开发者快速上手。
UVa401 Palindromes 回文词 题解
UVa401 Palindromes 回文词 题目链接:UVa401 题目描述 输入格式 输出格式 题目翻译 输入是一个字符串,判断它是否为回文串以及镜像串。输入字符串保证不含数字0 。所谓回文串,就是反转以后和原串相同,如abba和madam 。所谓镜像串,就是左右镜像之后和原串相同,如2S 和3AIAE 。注意,并不是每个字符在镜像之后都能得到一个合法字符。在本题中,每个合法字符的镜像如上表所示。 输入的每行包含一个字符串(保证只有上述字符,不含空白字符),判断它是否为回文串和镜像串(共4种组合)
DEXPI与Proteus XML:解锁过程工业P&ID数据互操作性的技术核心
本文深入探讨了DEXPI与Proteus XML在过程工业P&ID数据互操作性中的核心技术。通过解析DEXPI标准的开源特性和Proteus XML的架构设计,揭示了其在跨平台数据交换中的关键作用,并结合CADMATIC和西门子COMOS的实战案例,展示了如何实现高效的数据集成与转换。
UVA401 回文词 Palindromes 题解
题意翻译 输入是一个字符串,判断它是否为回文串以及镜像串。输入字符串保证不含数字00 。所谓回文串,就是反转以后和原串相同,如abbaabb**a 和madammadam 。所谓镜像串,就是左右镜像之后和原串相同,如2S2S 和3AIAE3AIA**E 。注意,并不是每个字符在镜像之后都能得到一个合法字符。在本题中,每个合法字符的镜像如下表所示: Character Reverse A A E 3 H H I I J
ESP32-CAM入门教程
ArduinoESP32-CAM下载模块(接上USB就能用,很方便,如果没有买就只有资金用USB-TTL了)如下图两个合在一起如下图。
银河麒麟V10离线安装VLC播放器:依赖处理与3.0.9.2版本实操指南
在国产化操作系统日益普及的背景下,软件安装方式成为政企内网用户关注的重点。离线安装作为一种不依赖公网源的部署手段,常用于解决内网环境下的软件获取问题。其核心在于理解Linux包管理机制,如dpkg与apt对依赖关系的处理逻辑。掌握这一原理,不仅能应对多媒体软件的部署,也能提升系统维护效率。VLC作为跨平台多媒体播放器,凭借强大的解码能力与协议支持,广泛应用于本地视频播放、RTSP拉流及监控大屏等场景。本文从离线安装的通用概念出发,结合银河麒麟V10桌面版的实际环境,详细梳理了VLC 3.0.9.2离线包的获
UVA 401
UVA 401: 输入一个字符串,判断它是否是回文串以及镜像串。输入字符串保证不含数字0.所谓回文串,就是反转以后和原串相同,如abba和madam. 所谓镜像串,就是左右镜像后与原串相同,如2S和3AIAE.注意,并不是每个字符在镜像后都能够得到一个合法字符。 #include #include #include using namespace std; const ch
大整数因数分解工具——yafu
可以将大整数放在一个新建文件中——data.txt,最后面一定要换行,不然会出现eof;done processing batchfile,运行命令。2.点击设置——系统——系统信息——高级系统设置——环境变量——点击PATH(上下都可以)——新建 添加yafu-x64.exe 所在路径——点击确定。,如果整数数过长,会出现错误mismatched parens;1.找到yafu-x64.exe 所在的文件路径。如果出现以下图像,说明配置成功。3.打开cmd,输入。
UVa:401 - Palindromes
这是回归以后发表的第一道UVa的题目,略感
Surface Go 2 变身 Linux 开发本:保姆级 Ubuntu 20.04 双系统安装与驱动配置全攻略
本文详细介绍了如何将 Surface Go 2 变身为高效的 Linux 开发本,涵盖 Ubuntu 20.04 双系统安装、专用内核配置、驱动优化等全流程。通过 linux-surface 内核安装和硬件驱动优化,确保 Surface Go 2 的触控、笔输入、摄像头等功能完美运行,适合开发者打造便携生产力工具。
UVA 401(palindorme)简单字符串处理
入门的字符串处理,小心为妙。 坑爹的注意空格输出 #include #include #include using namespace std; bool is_p(char *s,int len)//判断是否为回文注意下标 { for(int i=0;i<len/2;i++) { if(s[i]!=s[len-i-1]) ret
2026最新版OpenClaw安装:Windows WSL2从零到跑通
Windows WSL2安装OpenClaw指南 本文详细介绍了在Windows系统上通过WSL2部署OpenClaw AI助理的完整流程。WSL2结合了Windows易用性和Linux高性能,特别适合Windows用户、开发者、学生和技术爱好者。文章涵盖硬件要求(推荐i5/16GB/SSD)、系统准备(Windows 10/11+WSL2)、环境部署(Python/Node.js/Redis)和OpenClaw配置(克隆/编译/初始化)等关键步骤。通过WSL2,用户可在保留Windows操作习惯的同
UVa OJ 回文词(401)
Palindromes A regular palindrome is a string of numbers or letters that is the same forward as backward. For example, the string "ABCDEDCBA" is apalindrome because it is the same when the
VC中sqlite的使用
在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示
jre9下载 jdk9
(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】
UVA OJ-401 回文词
Palindromes A regular palindrome is a string of numbers or letters that is the same forward as backward. For example, the string "ABCDEDCBA" is a palindrome because it is the same when the
ET2012新版免狗免安装绿色软件
ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,
OJ系列-UVA401( Palindromes)java版
签到,今天是连续OJ系列的第三天 感觉今天要超时了,在写这篇博客时,我心里有一万匹草泥马在奔腾,这么一道题居然耽搁了我这么多时间,搞得我今晚web还没有学,我TM…呜呜呜 题目 输入一个字符串, 判断它是否为回文串以及镜像串。 输入字符串保证不含数字0。 所谓回文串, 就是反转以后和原串相同, 如abba和madam。 所谓镜像串, 就是左右镜像之后和原串相同, 如2S和3AIAE。 注意, 并不...
RU DOS版、EFI版32bit/64bit BIOS常用工具
DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。
回文串和镜像串,组合不同,下标为何*2 。 UVA 401 Palindromes 回文词
回文串和镜像串,组合不同,下标为何*2 。 UVA 401 Palindromes 回文词 题解就不在这里复制了,这里就是分析一下: cout 为什么输出结果 2 *m, 1 * p.这之间有怎样的关系? 回文,镜像串,这是4种组合。 题中的msg[0]是非回文,其实省略了, 全称是: 非回文、非镜像。 msg[1]是: 回文、非镜像。 msg[2]是: 非回文、镜像
UVA401回文串+镜像串判断
题目链接:https://www.luogu.com.cn/problem/UVA401 回文串的判断不难,难点在于镜像串的判断,所谓镜像串就是根据题目的镜像表两次镜像后保持原样就是镜像串,第一次镜像后得到的是这个串的倒像,所以判断一个镜像串的依据就是一次翻转后是这个串的倒像。 问题在于怎么镜像,写个函数整个串镜像?还是写个函数只镜像单个字符?显然如果我们镜像整个串会麻烦很多,所以选择镜像单个字符。随之而来的问题是我们怎么存题目给的镜像表,我一开始的想法是用两个string分别存原字符和镜像字符,然后每次镜
UVA 401 回文词 Palindromes
UVA 401
uva 401(简单字符处理题)
1:判断回文串 2:判断镜像串
UVa 401 - Palindromes -AC
这道题看完题思路大致清晰,总体分开两个函数写,一个判断回文串,一个判断镜像串。 回文串判断好写,循环判断前半截与后半截是否一致即可。 关键在判断镜像串,一开始就也没多想,简单的判断呗~虽然知道要写好多,但也懒得细想。先判断字符串中有没有不是镜像字符的,有就直接返回0,没有再依次判断对称位置上的镜像字符是否对应,有不对应的就直接返回0,全都对应最后返回1. 虽然直接AC了,但这样写完了190行
UVA401(POJ1590) - Palindromes
UVa 401 -- Palindromes题目大意:就是输入一连串字符,判断每一行的字符串输入那一种情况,有regular palindrome,mirroredpalindrome,mirrored string, not a palindrome 四种情况,大概的判断方法已经通过表格给出。解题过程:读入每一行字符串,然后从首尾开始判断,首先讨论两个字符是否相等,然后在相等与不相等的两种情况里...
UVa401 - Palindromes
UVa401 - Palindromes:一个Bug点
UVa 401 - Palindromes
https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=96&page=show_problem&problem=342 题目: 1. 回文数: 一串由字母和数字组成的字符串,正着读和逆着读是相同的;例如"ABCDEDCBA"; 2. 镜像数:一串由字母...
UVAoJ --401
UVAoJ –401 这是第一次写的代码,编写两个函数分别判断镜像和回文,然后就是两个结果的排列组合了,根据结果不同输出不同的判断,但是以下这段代码的结果却是WA。还在理解中#include <stdio.h> #include <string.h>char buf[21];int is_palindrome(char a[]) { int i,len=strlen(a); fo
深挖C++:类和对象(中)
(先进后出)
762



被折叠的 条评论
为什么被折叠?



