U123146 『LMOI#2』TransString
题目背景
事实证明这道题比第一题简单
------------
小马斯在学字符串时,学到了许多知识:
字符串或串是由数字、字母、下划线组成的一串字符。它是编程语言中表示文本的数据类型。在程序设计中,字符串为符号或数值的一个连续序列,如符号串或二进制数字串。
通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等。两个字符串相等的充要条件是:长度相等,并且各个对应位置上的字符都相等。设 $p、q$ 是两个串,求 $q$ 在 $p$ 中首次出现的位置的运算叫做模式匹配。串的两种最基本的存储方式是顺序存储方式和链接存储方式。——百度百科
此外,小马斯还发现有的字符串经过一定的变化后可以形成另一个特殊的字符串。~~这好像是废话~~ 他把想法告诉了 Der。于是 Der 便想到了一种极妙的变换方式。
题目描述
对于一个字符串来说,定义一次循环位移操作为:将字符串的第一个字符移动到末尾形成新的字符串。
给定两个字符串 $S_1,S_2$ ,要求判定 **其中一个** 字符串是否是另一个字符串通过若干次循环位移后的新字符串的子串。例如 `CDAA` 是 `AABCD` 两次循环位移后产生的新串 `BCDAA` 的子串,而 `ABCD` 与 `ACBD` 则无法成功。
对子串的具体解释请见下方`题目翻译`。
输入格式
无
输出格式
无
说明/提示
对于 $100\%$ 的数据,$|S_i|