#4645. 纸条游戏

纸条游戏

题目描述

小 A 和小 B 在玩一个纸条游戏。他们各自写下一个由小写字母组成的字符串 SSTT,然后约定可以通过以下规则修改 SS

操作规则包含两种:

  1. 每次选择两个不同的小写字母 c1c_1c2c_2,然后把 SS 中所有的 c1c_1 替换成 c2c_2,同时所有的 c2c_2 替换成 c1c_1
  2. 选择 SS 中的任意两个不同位置上的字符,交换他们的位置。

例如,如果 S=appleS = \texttt{apple},交换 a\texttt{a}p\texttt{p} 后,SS 会变成 paale\texttt{paale}

如果小 A 可以通过若干次(包括零次)上述操作,使得 SS 最终和 TT 完全相同,则小 A 获胜。请你作为裁判,判断小 A 能否获胜。

输入格式

第一行输入一个整数 tt,表示测试数据的组数。

接下来 tt 组数据,每组数据包含两行,每行一个由小写字母组成的字符串,分别表示 SSTT。保证 S=T|S| = |T|

输出格式

对于每组测试数据,若小 A 可以获胜,输出 Yes;否则,输出 No

样例

4
azzel
apple
chokudai
redcoder
abcdefghijklmnopqrstuvwxyz
ibyhqfrekavclxjstdwgpzmonu
apple
aezel
Yes
No
Yes
Yes

提示

第 1 组测试数据解释S=azzelS=\texttt{azzel}T=appleT=\texttt{apple}

可通过两次操作 1 完成转换:

  • 选择 c1=ec_1=\texttt{e}c2=lc_2=\texttt{l},将 SS 中所有 e\texttt{e}l\texttt{l} 交换,得到 azzle\texttt{azzle}
  • 选择 c1=zc_1=\texttt{z}c2=pc_2=\texttt{p},将 SS 中所有 z\texttt{z}p\texttt{p} 交换,得到 apple\texttt{apple},与 TT 一致。

第 4 组测试数据解释S=appleS=\texttt{apple}T=aezelT=\texttt{aezel}

可通过三次操作 1 和一次操作 2 完成转换:

  • 选择 c1=pc_1=\texttt{p}c2=ec_2=\texttt{e},交换所有 p\texttt{p}e\texttt{e},得到 aeelp\texttt{aeelp}
  • 选择 c1=pc_1=\texttt{p}c2=zc_2=\texttt{z},交换所有 p\texttt{p}z\texttt{z},得到 aeelz\texttt{aeelz}
  • 选择 c1=lc_1=\texttt{l}c2=zc_2=\texttt{z},交换所有 l\texttt{l}z\texttt{z},得到 aeezl\texttt{aeezl}
  • 交换第 33 个位置的 e\texttt{e} 和第 44 个位置的 z\texttt{z},得到 aezel\texttt{aezel},与 TT 一致。

数据范围

对于 100%100\% 的数据,满足以下条件:

  • 1t201 \le t \le 20
  • 1S=T2×1051 \le |S| = |T| \le 2 \times 10^5
  • 字符串均由小写英文字母组成