/
Time Limit: 2 sec / Memory Limit: 1024 MiB
配点 : 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,
kyotobecomesokyot. - In the second operation,
okyotbecomestokyo.
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