AT_abc232_b [ABC232B] Caesar Cipher
Description
[problemUrl]: https://atcoder.jp/contests/abc232/tasks/abc232_b
高橋君は英小文字からなる文字列 $ S $ を持っています。
高橋君は文字列 $ S $ に対して、下記の操作をちょうど $ 1 $ 回行います。
- まず、非負整数 $ K $ を選ぶ。
- その後、$ S $ の各文字を $ K $ 個後ろの英小文字に変更する。
ただし、
- `a` の $ 1 $ 個後ろの英小文字は `b` であり、
- `b` の $ 1 $ 個後ろの英小文字は `c` であり、
- `c` の $ 1 $ 個後ろの英小文字は `d` であり、
- $ \cdots $
- `y` の $ 1 $ 個後ろの英小文字は `z` であり、
- **`z` の $ 1 $ 個後ろの英小文字は `a` です。**
例えば、`b` の $ 4 $ 個後ろの英小文字は `f` であり、`y` の $ 3 $ 個後ろの英小文字は `b` です。
文字列 $ T $ が与えられます。 高橋君が上記の操作によって $ S $ を $ T $ に一致させることができるかを判定してください。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ S $ $ T $
Output Format
高橋君が $ S $ を $ T $ に一致させることができる場合は `Yes` と出力し、 できない場合は `No` と出力せよ。
Explanation/Hint
### 制約
- $ S $ と $ T $ はそれぞれ英小文字からなる長さ $ 1 $ 以上 $ 10^5 $ 以下の文字列
- $ S $ の長さと $ T $ の長さは等しい
### Sample Explanation 1
高橋君が $ K=8 $ を選ぶと、 - `a` は $ 8 $ 個後ろの `i` に - `b` は $ 8 $ 個後ろの `j` に - `c` は $ 8 $ 個後ろの `k` に それぞれ変更され、$ S $ と $ T $ が一致します。 高橋君が $ S $ を $ T $ に一致させることができるため `Yes` と出力します。
### Sample Explanation 2
高橋君が $ K=1 $ を選ぶと $ S $ と $ T $ が一致します。 `z` の $ 1 $ 個後ろの英小文字は `a` であることに注意してください。
### Sample Explanation 3
高橋君は非負整数 $ K $ をどのように選んでも $ S $ を $ T $ に一致させることができません。 よって、`No` と出力します。
### Sample Explanation 4
高橋君が $ K=0 $ を選ぶと $ S $ と $ T $ が一致します。