题目描述
字符串折叠的定义如下:
1、一个字符串可以看成它自身的折叠。记作S→S
2、X(S)是X(X>1)个S连接在一起的串的折叠。记作X(S)→SSSS...S(X个S)。
3、如果A→A,B→B,则AB→AB
例如,因为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。
输出格式
输出文件仅有一行包含一个字符串,即最短的折叠,也就是折叠后的字符串长度最短。如有多个解,你只须输出其中任意的一个解。
样例输入
样例输出