#1458. 字符串折叠
字符串折叠
当前没有测试数据。
字符串折叠
题目描述
折叠的定义如下:
一个字符串可以看成它自身的折叠。记作。
是个连接在一起的串的折叠。记作(个)。
如果,,则。例如,因为,,所以,而。
给一个字符串,求它的最短折叠。例如的最短折叠为:。
输入格式
一行一个字符串,表示字符串。
输出格式
一行一个整数,表示最短的折叠长度。
数据范围与提示
对于的数据,保证。
样例
NEERCYESYESYESNEERCYESYESYES
14
说明
一个最短的折叠为:
当前没有测试数据。
折叠的定义如下:
一个字符串可以看成它自身的折叠。记作S=S。
X(S)是X(X>1)个S连接在一起的串的折叠。记作X(S)=SSSS…S(X个S)。
如果A=A′,B=B′,则AB=A′B′。例如,因为3(A)=AAA,2(B)=BB,所以3(A)C2(B)=AAACBB,而2(3(A)C)2(B)=AAACAAACBB。
给一个字符串,求它的最短折叠。例如AAAAAAAAAABABABCCD的最短折叠为:9(A)3(AB)CCD。
一行一个字符串,表示字符串S。
一行一个整数,表示最短的折叠长度。
对于100%的数据,保证∣S∣≤100。
NEERCYESYESYESNEERCYESYESYES
14
一个最短的折叠为:2(NEERC3(YES))