WTMGB

题目链接

题目描述

YellowStar is very happy that the FZU Code Carnival is about to begin except that he has to prepare problems for it. Because the statement of each problem is written in English!

YellowStar types the statements slowly witb high error rate. You must notice that the previous word ’witb’ is wrong(the correct word is ’with’). But YellowStar feels too tired, so he thinks a word is the same as another word if the character at each position of the word is adjacent to the corresponding character of the other word on the keyboard. The keyboard is shown in the figure below:

When two characters on ther keyboard have intersections, they are considered to be adjacent. For example,’S’ is adjacent to ’W’,’E’,’A’,’D’,’Z’ and ’X’.

Now YellowStar asks you to write a program to check whether two strings are the same. Print ’Yes’ if they are the same, and ’No’ otherwise(without the quotes).

输入

Input is given from Standard Input in the following format:

S1

S2

Constraints

1 ≤ | S1 | = | S2 | ≤ 103

S1 and S2 consist only of upper-case English letters.

输出

Print one line denotes the answer.

样例输入

S
U

样例输出

No

题解

简单模拟 但我写的太长太慢了

代码

#include<bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<n;i++)
#define scac(x) scanf("%c",&x)
#define sca(x) scanf("%d",&x)
#define sca2(x,y) scanf("%d%d",&x,&y)
#define sca3(x,y,z) scanf("%d%d%d",&x,&y,&z)
#define scl(x) scanf("%lld",&x)
#define scl2(x,y) scanf("%lld%lld",&x,&y)
#define scl3(x,y,z) scanf("%lld%lld%lld",&x,&y,&z)
#define pri(x) printf("%d\n",x)
#define pri2(x,y) printf("%d %d\n",x,y)
#define pri3(x,y,z) printf("%d %d %d\n",x,y,z)
#define prl(x) printf("%lld\n",x)
#define prl2(x,y) printf("%lld %lld\n",x,y)
#define prl3(x,y,z) printf("%lld %lld %lld\n",x,y,z)
#define ll long long
#define LL long long
inline ll read(){ll x=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}
while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
return x*f;}
#define read read()
#define pb push_back
#define mp make_pair
#define P pair<int,int>
#define PLL pair<ll,ll>
#define PI acos(1.0)
#define eps 1e-6
#define inf 1e17
#define INF 0x3f3f3f3f
#define MOD 998244353
#define mod 1e9+7
#define N 1000005
const int maxn=2000005;
string s1,s2;
int e[28][28];
void add(int a,int b)
{
e[a][b] = 1;
e[b][a] = 1;
}
void Init()
{
add('Q' - 'A','W' - 'A');
add('Q' - 'A','A' - 'A');
add('W' - 'A','E' - 'A');
add('W' - 'A','S' - 'A');
add('W' - 'A','A' - 'A');
add('E' - 'A','S' - 'A');
add('E' - 'A','R' - 'A');
add('E' - 'A','D' - 'A');
add('R' - 'A','T' - 'A');
add('R' - 'A','F' - 'A');
add('R' - 'A','D' - 'A');
add('T' - 'A','Y' - 'A');
add('T' - 'A','G' - 'A');
add('T' - 'A','F' - 'A');
add('Y' - 'A','U' - 'A');
add('Y' - 'A','H' - 'A');
add('Y' - 'A','G' - 'A');
add('U' - 'A','J' - 'A');
add('U' - 'A','I' - 'A');
add('U' - 'A','H' - 'A');
add('I' - 'A','O' - 'A');
add('I' - 'A','K' - 'A');
add('I' - 'A','J' - 'A');
add('O' - 'A','K' - 'A');
add('O' - 'A','L' - 'A');
add('O' - 'A','P' - 'A');
add('P' - 'A','L' - 'A');
add('A' - 'A','S' - 'A');
add('A' - 'A','Z' - 'A');
add('S' - 'A','D' - 'A');
add('S' - 'A','X' - 'A');
add('S' - 'A','Z' - 'A');
add('D' - 'A','F' - 'A');
add('D' - 'A','C' - 'A');
add('D' - 'A','X' - 'A');
add('F' - 'A','G' - 'A');
add('F' - 'A','V' - 'A');
add('F' - 'A','C' - 'A');
add('G' - 'A','H' - 'A');
add('G' - 'A','B' - 'A');
add('G' - 'A','V' - 'A');
add('H' - 'A','J' - 'A');
add('H' - 'A','N' - 'A');
add('H' - 'A','B' - 'A');
add('J' - 'A','K' - 'A');
add('J' - 'A','M' - 'A');
add('J' - 'A','N' - 'A');
add('K' - 'A','L' - 'A');
add('K' - 'A','M' - 'A');
add('Z' - 'A','X' - 'A');
add('X' - 'A','C' - 'A');
add('C' - 'A','V' - 'A');
add('V' - 'A','B' - 'A');
add('B' - 'A','N' - 'A');
add('N' - 'A','M' - 'A');
}
int main()
{
string s1,s2;
for(int i = 0; i<26;i++)
{
e[i][i] = 1;
}
Init();
cin >>s1 >> s2;
int flag =1 ;
for(int i = 0;i <s1.length();i++)
{
if(e[s1[i] - 'A'][s2[i] - 'A']) continue;
else{
flag = 0;
break;
}
}
if(flag ) cout << "Yes" <<endl;
else cout <<"No" <<endl;
return 0;
}
/*
5
1 6 9 8 3
2 5 6 7 9
*/

upc组队赛16 WTMGB【模拟】的更多相关文章

  1. upc组队赛16 Winner Winner【位运算】

    Winner Winner 题目链接 题目描述 The FZU Code Carnival is a programming competetion hosted by the ACM-ICPC Tr ...

  2. upc组队赛16 GCDLCM 【Pollard_Rho大数质因数分解】

    GCDLCM 题目链接 题目描述 In FZU ACM team, BroterJ and Silchen are good friends, and they often play some int ...

  3. upc组队赛16 Melody【签到水】

    Melody 题目描述 YellowStar is versatile. One day he writes a melody A = [A1, ..., AN ], and he has a sta ...

  4. 10.16 NOIP模拟赛

    目录 2018.10.16 NOIP模拟赛 A 购物shop B 期望exp(DP 期望 按位计算) C 魔法迷宫maze(状压 暴力) 考试代码 C 2018.10.16 NOIP模拟赛 时间:2h ...

  5. upc组队赛6 Progressive Scramble【模拟】

    Progressive Scramble 题目描述 You are a member of a naive spy agency. For secure communication,members o ...

  6. upc组队赛3 Congestion Charging Zon【模拟】

    Congestion Charging Zon 题目描述 Tehran municipality has set up a new charging method for the Congestion ...

  7. upc组队赛15 Lattice's basics in digital electronics【模拟】

    Lattice's basics in digital electronics 题目链接 题目描述 LATTICE is learning Digital Electronic Technology. ...

  8. upc组队赛18 THE WORLD【时间模拟】

    THE WORLD 题目链接 题目描述 The World can indicate world travel, particularly on a large scale. You mau be l ...

  9. upc 组队赛18 STRENGTH【贪心模拟】

    STRENGTH 题目链接 题目描述 Strength gives you the confidence within yourself to overcome any fears, challeng ...

随机推荐

  1. 最短路 dijkstra算法

    题目 给定n个点的带权有向图,求从1到n的路径中边权之和最小的路径. dijkstra实现方法 用dist[i]表示i这个点到原点的最短距离,一开始初始化为无穷大,然后将原点设为0. 用ok[i]表示 ...

  2. Cnblogs 的 MetaWeblog 的接口发生了变化

    Cnblogs 的 MetaWeblog 的接口发生了变化 */--> Cnblogs 的 MetaWeblog 的接口发生了变化 最近把 emacs 重新配置了一下,把 cnblogs 包也重 ...

  3. Day8---Python的字典类型及操作

    字典类 1.生成方法: a.介绍: 字典是键值对的集合,键值对 : 键是数据索引的扩展 b.生成方法: 使用{}  或者  dict()  a = {'a' = 1, 'b' = 2, 'c' = 3 ...

  4. adb shell常用命令总结

    一.文件操作相关命令 1.文件操作命令 子命令 参数 说明 cd 无 进入目录 cat [-beflnstuv] [-B bsize] [file...] 查看文件内容-n:显示行号-b:显示行号,但 ...

  5. Web前端基础学习-1

    HTML5/CSS简介 首先来说一说什么是HTML5,HTML5可以认为是字面上的意义,也就是HTML的第五代产品,当然从另一个角度来说它是一种新的富客户端解决方案. HTML5 将成为 HTML.X ...

  6. Android 线程池概念及使用

    一:使用线程池的原因 在android开发中经常会使用多线程异步来处理相关任务,而如果用传统的newThread来创建一个子线程进行处理,会造成一些严重的问题: 在任务众多的情况下,系统要为每一个任务 ...

  7. proc - 进程信息伪文件系统

    描述 /proc 是一个伪文件系统, 被用作内核数据结构的接口, 而不仅仅是解释说明 /dev/kmem. /proc里的大多数文件都是只读的, 但也可以通过写一些文件来改变内核变量. 下面对整个 / ...

  8. 微信小程序(2)--下拉刷新和上拉加载更多

    下拉刷新 1.首先在.json文件中配置(如果在app.json文件中配置,那么整个程序都可以下拉刷新.如果写在具体页面的.json文件中,那么就是对应的页面下拉刷新.) 具体页面的.json文件: ...

  9. rabbitmq3.7集群搭建实战

    环境: 3台 centos7.4rabbitmq3.7erlang 22 1. 有几种方式安装,这里使用的yum安装(官方推荐)2. 使用rabbitmq时需要安装erlang,在各个节点上使用vim ...

  10. Go的学习 append的使用

    1. package main; import "fmt" func test () { ],,,,}; s:=a[:] fmt.Printf(]) s=append(s,); s ...