请升级 HydroOJ 到 4.16.0 以上版本以正常使用此插件功能。

#58. 密码破译

密码破译

题目描述

小 T 正在尝试破译敌军的密码机。

根据已知的信息,敌军的密文中仅包含前 18 个字母('a' 到 'r'),而这些字母中只有一部分是有意义的。密码机的加密方式为在明文中随机加入一些无意义字母(明文中只会包含有意义的字母),但我们并不知道有意义的字母有哪些。

现在,我们获得了同一原文加密得到的两份密文,小 T 希望借这个机会反推出有意义字母的集合。

小 T 会给你 q 个可能的有意义字母集合,你需要判断这一集合是否可能正确 -- 也即两份密文在仅包含该集合内的字母时得到的字符串是否相同。

输入格式

第一行一个字符串,代表第一份密文 AA

第二行一个字符串,代表第二份密文 BB

保证 A,B 中仅包含前 18 个小写字母。

第三行一个正整数,代表询问次数 QQ

以下 QQ 行每行包含一个字符串。在一个询问字符串中,所有字母均不相同,代表询问的有意义字母集合。

输出格式

对每个询问,如果 AABB 在仅包含询问中给定的字母时相等则输出 'Y',否则输出 'N'。

输入输出样例 #1

输入 #1

aabcd
caabd
4
a
ac
abd
abcd

输出 #1

YNYN

输入 #2

aabbcad
abbacad
4
a
bd
bcd
ab

输出 #2

YYYN

说明/提示

对于 20%20\% 的数据,满足 A,B,Q1000|A|,|B|,Q \leq 1000。 对于 100%100\% 的数据,满足 A,B,Q105|A|,|B|,Q \leq 10^5

Download

样例