Problem J4: Cyclic Shifts
2020 · J4 · Original problem · DMOJProblem Description
Thuc likes finding cyclic shifts of strings. A cyclic shift of a string is obtained by moving characters from the beginning of the string to the end of the string. We also consider a string to be a cyclic shift of itself. For example, the cyclic shifts of ABCDE are:
ABCDE, BCDEA, CDEAB, DEABC, and EABCD.
Given some text, , and a string, , determine if contains a cyclic shift of .
Input Specification
The input will consist of exactly two lines containing only uppercase letters. The first line will be the text , and the second line will be the string . Each line will contain at most characters.
For 6 of the 15 available marks, will be exactly characters in length.
Output Specification
Output yes if the text, , contains a cyclic shift of the string, . Otherwise, output no.
Sample Input 1
ABCCDEABAA
ABCDEOutput for Sample Input 1
yes
Explanation of Output for Sample Input 1
CDEAB is a cyclic shift of ABCDE and it is contained in the text ABCCDEABAA.
Sample Input 2
ABCDDEBCAB
ABAOutput for Sample Input 2
no
Explanation of Output for Sample Input 2
The cyclic shifts of ABA are ABA, BAA, and AAB. None of these shifts are contained in the text ABCDDEBCAB.