#P1501. 循环串
循环串
题目描述
编写程序找出主字符串中的最短循环模式。当主字符串中存在多个循环模式时,返回长度最短的循环模式,若不存在则返回。
循环模式是指在主字符串中出现,且满足如下条件的子字符串:
(1)由至少字符构成;
(2)字符串自身不是自身的循环模式;
(3)在主字符串中出现次及以上,并且从主字符串开始处开始一直重复循环出现,即主字符串全部由子字符串构成(若出现主字符的长度不是子字符串的长度的整数倍,
那主字符中剩余的部分也必须和子字符串中从左开始的等长部分相同)。
例如:
(1)主字符串从开始处出现两次子字符串后还剩余, 该剩余部分与子字符串的前两个字符仍然完全相同,
因此子字符串是主字符串 的循环模式。
(2)从开始处出现两次子字符串后还剩余,该剩余部分 与子字符的前两个字符不完全相同,
因此子字符串不是主字符串的循环 模式。
输入描述
输入一个字符串,字符串长度为`
输出描述
输出最短循环模式串或者`
样例
输入
12312312
输出
123