UVA_401:Palindromes
AC:Time(29ms) C++ 4.8.2
#include<stdio.h>
#include<string.h>
char * mirstr = "AAE3EHHIIJLJMM0OS2STTUUVVWWXXYYZ5Z88";
int dispose(char *);
int main(void)
{
char str[];
int state;
while(scanf("%s", str) == )
{
state = dispose(str);
switch(state)
{
case : printf("%s -- is not a palindrome.\n\n", str); break;
case : printf("%s -- is a regular palindrome.\n\n", str); break;
case : printf("%s -- is a mirrored string.\n\n", str); break;
case : printf("%s -- is a mirrored palindrome.\n\n", str); break;
}
} return ;
} int dispose(char * str)
{
int i;
bool palin = true;
bool mirr = true;
int len = strlen(str);
int half_len = len / ;
// 判断回文
for(i = ; i < half_len; i++)
if(str[i] != str[len--i])
palin = false; char * p;
// 判断镜像
for(i = ; i < len; i++)
{
p = strchr(mirstr, str[i]);
if(!p)
{
mirr = false;
break;
} if(p[] == 'O' || p[] == '') // 字母O和数字0单独处理
{ // 一开始这个花括号忘记了,导致最后一个测试数据失败,情况四变成了情况二,通过调试检查出了错误。
if(str[len--i] != 'O' && str[len--i] != '')
{
mirr = false;
break;
}
}
else if(p[] != str[len--i])
{
mirr = false;
break;
}
} if(palin == false && mirr == false)
return ;
else if(palin == true && mirr == false)
return ;
else if(palin == false && mirr == true)
return ;
else
return ; }
UVA_401:Palindromes的更多相关文章
- UVA - 11584 Partitioning by Palindromes[序列DP]
UVA - 11584 Partitioning by Palindromes We say a sequence of char- acters is a palindrome if it is t ...
- hdu 1318 Palindromes
Palindromes Time Limit:3000MS Memory Limit:0KB 64bit ...
- dp --- Codeforces 245H :Queries for Number of Palindromes
Queries for Number of Palindromes Problem's Link: http://codeforces.com/problemset/problem/245/H M ...
- Dual Palindromes
Dual PalindromesMario Cruz (Colombia) & Hugo Rickeboer (Argentina) A number that reads the same ...
- ytu 1940:Palindromes _easy version(水题)
Palindromes _easy version Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 47 Solved: 27[Submit][Statu ...
- 回文串+回溯法 URAL 1635 Mnemonics and Palindromes
题目传送门 /* 题意:给出一个长为n的仅由小写英文字母组成的字符串,求它的回文串划分的元素的最小个数,并按顺序输出此划分方案 回文串+回溯:dp[i] 表示前i+1个字符(从0开始)最少需要划分的数 ...
- UVA 11584 一 Partitioning by Palindromes
Partitioning by Palindromes Time Limit:1000MS Memory Limit:0KB 64bit IO Format:%lld & %l ...
- 洛谷P1207 [USACO1.2]双重回文数 Dual Palindromes
P1207 [USACO1.2]双重回文数 Dual Palindromes 291通过 462提交 题目提供者该用户不存在 标签USACO 难度普及- 提交 讨论 题解 最新讨论 暂时没有讨论 ...
- hdu 1318 Palindromes(回文词)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1318 题意分析:输入每行包含一个字符串,判断此串是否为回文串或镜像串. 表面上看这道题有些复杂,如果能 ...
随机推荐
- python 当文件目录不存在时,如何自动创建
import os if not os.path.exists('foldername'): os.mkdir('foldername')
- IOS下的 click 点击失效
当委托给一个元素添加click事件时,如果事件是委托到 document 或 body 上,并且委托的元素是默认不可点击的(如 div, span 等),此时 click 事件会失效. demo: & ...
- codeforces 545E E. Paths and Trees(单源最短路+总权重最小)
E. Paths and Trees time limit per test:3 seconds memory limit per test:256 megabytes input:standard ...
- 磁力搜索网站 BT torrent search engine 推荐 2019/12/25日更新
btkitty 知名的BT磁力搜索,资源很多,中文友好 btdb 知名的BT磁力搜索,资源很多,中文友好 838888 不错的 BT 磁力搜索引擎,资源很多,中文友好 idope.se 资源丰富的BT ...
- Codeforces 220B
B. Little Elephant and Array time limit per test 4 seconds memory limit per test 256 megabytes input ...
- []jnhs]日志套件log4j输出到控制台和文件
log4j的xml配置文件改为 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j: ...
- Django--登录功能
登录功能: 1.路由访问如果不加斜杠,内部会重定向加斜杠的路由 所有的html文件都默认卸载templates文件夹下面 所有的(css,js,前端第三方的类库)默认都放在static文件夹下 htm ...
- Angular.js的自定义功能
1,自定义指令,在html中输入标签显示想要的指令 html script部分 2,标签中的属性的 有属性值时可以通过函数的参数返回属性值 没有属性值时可以设置属性值(自定义属性值) html部分 ...
- 初探Druid
说到连接池,最常见的就是dbcp和c3p0,关于druid,官方定义是为监控而生的数据库连接池. 官方中文文档地址:https://github.com/alibaba/druid/wiki/%E5% ...
- SQL Sever实验三 视图与数据更新
一. 实验目的 1.掌握创建视图的 SQL 语句,数据更新的 SQL 语句. 2.了解使用创建视图向导创建视图的方法. 3.掌握使用 SQL 创建视图的方法,使用 SQL 更新数据的方法. 二. 实验 ...