#4191. 凯撒密码(Caesar Cipher)
凯撒密码(Caesar Cipher)
题目描述
小高有一个由小写英文字母组成的字符串。他将对这个字符串进行以下操作一次:
-
首先,选择一个非负整数。
-
然后,将中的每个字符向右移动K位(见下文)。
这里,
- 向右移动1位变成;
- 向右移动1位变成;
- 向右移动1位变成;
- ⋯
- 向右移动1位变成;
- 向右移动1位变成。
例如,向右移动4位变成,向右移动3位变成。
给定一个字符串,判断小高是否可以通过上述操作使等于。
输入格式
输入字符串和。
输出格式
如果小高可以使等于,输出Yes
;否则,输出No
。
样例
abc
ijk
Yes
z
a
Yes
ppq
qqp
No
atcoder
atcoder
Yes
样例解释
【样例1说明】
当小高选择时,
- 向右移动8位变成,
- 向右移动8位变成,
- 向右移动8位变成,
现在和相等。
因此,他可以使等于,所以应该输出Yes
。
【样例2说明】
选择可以使和相等。
注意的右边一位是。
【样例3说明】
没有非负整数可以使等于,所以应该输出No
。
【样例4说明】
选择可以使和相等。
数据范围
和都是长度在到(含)之间的由小写英文字母组成的字符串。和的长度相等。
来源
- AtCoder ABC232B