[ CodeVS冲杯之路 ] P1171
不充钱,你怎么AC?
题目:http://codevs.cn/problem/1171/
代码调了很久才调好啊,一开始题目都看错了(要是真的NOIP肯定没戏了QuQ)
后面发现CodeVS上的数据输入最后是没有回车的,导致WA烂啊……
给你两个串,它们每个字母有一一对应的关系,如果遇到不同字母对应相同的就 Failed
或者相同字母对应不同字母也 Failed,如果最后 'A'-'Z' 其中有没有对应的还是 Failed
直接开 255 的数组,(其实也可以只开26个)相当于 26 个关键字的哈希
双判重后检测是否每个字母都有对应
最后按照对应输出
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#define NA {printf("Failed\n");return 0;}
using namespace std; char d[],s[],a[],v[];
bool f[];
int main()
{
char c;
int i,len,j=;
scanf("%s\n",s);
len=strlen(s);
for (i=;i<len;i++)
{
c=getchar();
if (d[s[i]]!='\0'&&d[s[i]]!=c) NA
else d[s[i]]=c;
}
for (i='A';i<='Z';i++) if (d[i]=='\0'||f[d[i]]) NA else f[d[i]]=;
getchar();
scanf("%s",v);
i=;
while (v[i]>='A'&&v[i]<='Z')
{
if (d[v[i]]!='\0') a[++j]=d[v[i]];
else NA
i++;
}
for (i=;i<=j;i++) printf("%c",a[i]);
return ;
}
[ CodeVS冲杯之路 ] P1171的更多相关文章
- [ CodeVS冲杯之路 ] P1368
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1368/ 嗯……泡泡堂,很劲啊,其实就是个盗版的田忌赛马 http://www.cnblogs.com/hyfer/p/ ...
- [ CodeVS冲杯之路 ] P1092
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1092/ 嗯,这道题有一定难度啊,需要先用扩展欧几里得算法求出逆元,然后按照大小构一颗带边权为小时数的树 树链剖分后在树 ...
- [ CodeVS冲杯之路 ] P3955
不充钱,你怎么AC? 题目:http://codevs.cn/problem/3955/ 最长上升子序列的加强版,n 有1000000,n 方的 DP 肯定会 TLE,那么用二分栈维护 二分栈我讲不好 ...
- [ CodeVS冲杯之路 ] P1165
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1165/ 题目很简单,代码最好写朴实一点,不要想着哪些情况可以合并在一起啊等等 老老实实一个个判断,不然很容易出错 细节 ...
- [ CodeVS冲杯之路 ] P1053
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1053/ 直接扫一遍串,把字母对应的 ascii 码直接做数组下标,交给数组统计 最后查询一遍数组的 'a'-'z' , ...
- [ CodeVS冲杯之路 ] P1197
不充钱,你怎么AC? 题目:http://codevs.cn/problem/1197/ 密钥的字母可以全转换为小写字母,然后一一映射,a→0,b→1,c→2,依此类推 对于密文只需将每一位减去对应密 ...
- [ CodeVS冲杯之路 ] P2492
不充钱,你怎么AC? 题目:http://codevs.cn/problem/2492/ 在此先orz小胖子,教我怎么路径压缩链表,那么这样就可以在任意节点跳进链表啦(手动@LCF) 对于查询操作,直 ...
- [ CodeVS冲杯之路 ] P2456
不充钱,你怎么AC? 题目:http://codevs.cn/problem/2456/ 用贪心的思想,木材当然要尽量分成多的木板,而大的木材能够分成大木板,但是小的木材不一定能够分成大的木板,所以木 ...
- [ CodeVS冲杯之路 ] P2952
不充钱,你怎么AC? 题目:http://codevs.cn/problem/2952/ 题目讲一个细胞可分裂成 2 个,那么当前数目就是2a,a 为时间 然后 q 个细胞一起会死亡,也就是对 q 取 ...
随机推荐
- 面向对象设计模式--策略模式Strategy
策略模式的UML类图(VS2013 C++版本): 策略模式的重点:每个策略对象封装一个算法,有多少个算法就有多少个对象.策略模式的意图是封装算法.要从“抽象不仅面对状态(字段.属性)还面对行为(算法 ...
- C#使用ConditionalAttribute特性来实现代码调试
转自:http://www.csharpwin.com/csharpspace/10729r8541.shtml #if/#endif条件编译常用来由同一份源代码生成不同的结果文件,最常见的有debu ...
- PHP转换UTF-8和GB2312的URL编码(转)
目前WEB的应用中, UTF-8编码和GB2312编码是并存在的,例如百度(baidu.com)和谷歌(google.com)的URL编码分别是GB2312编码和UTF-8编码.由于编码并存引起的乱码 ...
- setValue:forUndefinedKey
*** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewControlle ...
- Red hat 5挂载U盘
装在虚拟机上的Linux 一.挂载U盘 ...
- apache/php 开启 gzip压缩
1.php方式开启 原理: header("Content-Encoding: gzip"); echo gzencode('songjiankang'); 示例1: functi ...
- linux命令(12)uniq去重
转载地址:http://blog.51yip.com/shell/1022.html 实例详细说明linux下去除重复行命令uniq 一,uniq干什么用的 文本中的重复行,基本上不是我们所要的,所以 ...
- linux命令(9)设定固定ip
一.使用命令设置ubuntu的ip地址 1.修改配置文件blacklist.conf禁用IPV6: sudo vi /etc/modprobe.d/blacklist.conf 2.在文档最后添加 b ...
- linux操作系统的分类及解释
什么是Linux? 也许很多人会不屑的说,Linux不就是个操作系统么.错!Linux不是一个操作系统,严格来讲,Linux只是一个操作系统中的内核.内核是什么?内核建立了计算机软件与硬件之间通讯的平 ...
- 使用BeanUtils操作Bean属性
package com.wzh.test.beanutils; import java.lang.reflect.InvocationTargetException; import java.text ...