

Time Limit: 2 sec / Memory Limit: 1024 MB
配点 : 200 点
問題文
英小文字からなる文字列 S, T が与えられます。
S を回転させて T に一致させられるか判定してください。
すなわち、以下の操作を任意の回数繰り返して S を T に一致させられるか判定してください。
操作: S = S_1 S_2 ... S_{|S|} のとき、S を S_{|S|} S_1 S_2 ... S_{|S|-1} に変更する
ここで、|X| は文字列 X の長さを表します。
制約
- 2 \leq |S| \leq 100
- |S| = |T|
- S, T は英小文字からなる
入力
入力は以下の形式で標準入力から与えられる。
S T
出力
S を回転させて T に一致させられる場合は Yes
、一致させられない場合は No
を出力せよ。
入力例 1
kyoto tokyo
出力例 1
Yes
- 1 回目の操作で
kyoto
がokyot
になります - 2 回目の操作で
okyot
がtokyo
になります
入力例 2
abc arc
出力例 2
No
何度操作を行っても abc
と arc
を一致させられません。
入力例 3
aaaaaaaaaaaaaaab aaaaaaaaaaaaaaab
出力例 3
Yes
Score : 200 points
Problem Statement
You are given string S and T consisting of lowercase English letters.
Determine if S equals T after rotation.
That is, determine if S equals T after the following operation is performed some number of times:
Operation: Let S = S_1 S_2 ... S_{|S|}. Change S to S_{|S|} S_1 S_2 ... S_{|S|-1}.
Here, |X| denotes the length of the string X.
Constraints
- 2 \leq |S| \leq 100
- |S| = |T|
- S and T consist of lowercase English letters.
Input
Input is given from Standard Input in the following format:
S T
Output
If S equals T after rotation, print Yes
; if it does not, print No
.
Sample Input 1
kyoto tokyo
Sample Output 1
Yes
- In the first operation,
kyoto
becomesokyot
. - In the second operation,
okyot
becomestokyo
.
Sample Input 2
abc arc
Sample Output 2
No
abc
does not equal arc
after any number of operations.
Sample Input 3
aaaaaaaaaaaaaaab aaaaaaaaaaaaaaab
Sample Output 3
Yes