#AT2014. B - Caesar Cipher
B - Caesar Cipher
当前没有测试数据。
B - 凯撒密码
得分:$200$ 分
问题描述
高桥有一个由小写英文字母组成的字符串 $S$。
他将在该字符串上执行以下操作:
- 首先,选择一个非负整数 $K$。
- 然后,将 $S$ 中的每个字符向右移动 $K$ 个位置(见下文)。
这里,
- 向右移动 $1$ 个位置的字符
a
变为b
; - 向右移动 $1$ 个位置的字符
b
变为c
; - 向右移动 $1$ 个位置的字符
c
变为d
; - $\cdots$
- 向右移动 $1$ 个位置的字符
y
变为z
; - 向右移动 $1$ 个位置的字符
z
变为a
。
例如,向右移动 $4$ 个位置的字符 b
变为 f
,向右移动 $3$ 个位置的字符 y
变为 b
。
给定一个字符串 $T$。请判断高桥是否可以通过上述操作使得 $S$ 等于 $T$。
约束
- $S$ 和 $T$ 分别是长度在 $1$ 到 $10^5$(含)之间的由小写英文字母组成的字符串。
- $S$ 和 $T$ 的长度相等。
输入
从标准输入读入数据,输入的格式如下:
输出
如果高桥可以通过操作使得 $S$ 等于 $T$,则输出 Yes
;否则输出 No
。
abc
ijk
Yes
当高桥选择 $K=8$ 时,
- 字符
a
向右移动 $8$ 个位置变为i
, - 字符
b
向右移动 $8$ 个位置变为j
, - 字符
c
向右移动 $8$ 个位置变为k
。
此时,$S$ 和 $T$ 相等。
因此,高桥可以通过操作使得 $S$ 等于 $T$,所以应该输出 Yes
。
z
a
Yes
选择 $K=1$ 使得 $S$ 和 $T$ 相等。
需要注意的是,z
右边的字母是 a
。
ppq
qqp
No
无法选择非负整数 $K$ 使得 $S$ 等于 $T$,所以应该输出 No
。
atcoder
atcoder
Yes
选择 $K=0$ 使得 $S$ 和 $T$ 相等。