Module: 动态规划中的模式


Problem

4 /7


字符串压缩

Problem

克洛伊想给她的朋友写一封信。 Letter - 字符串 s,由小写拉丁字母组成。
不幸的是,克洛伊一开始写这封信,她就发现这封信太长了,要完整地写下来需要很长时间。所以她想写一个字符串 s 的压缩版本而不是字符串本身。

字符串 s — 的压缩版本字符串序列 c1, s1, c2, s2,   ..., ck, sk,其中 ci — ai 的十进制表示(没有前导零)和 si —一些小写拉丁字母串。如果 Chloe 将字符串 s1 正好写了 a1 次,那么 s2 正好是 a2 次,依此类推在 上,它将产生字符串 s。
压缩版的长度为|c1| + |s1| + |c2|  +  |s2|... |ck| + |sk|。在所有压缩版本中,Chloe 想选择长度最短的版本。帮助 Chloe 找到尽可能短的长度。

输入:
输入的单行包含一个由小写拉丁字母(1 ≤ |s| ≤ 5000)组成的字符串s。

输出:
打印单个整数——字符串 s 的压缩版本的最小长度。

示例:
  <正文>

说明:
在第一个示例中,Chloe 将选择以下版本:c1 — 10、s1 ——一.
在第二个示例中,Chloe 将选择以下版本:c1 — 1, s1 —— abcab.
在第三个示例中,Chloe 将选择以下版本:c1 — 2、s1 —— c, c2 —— 1, s2 —— z, c3 —— 4、s3 —— ab.
 
输入 输出
啊啊啊啊啊啊 3
abcab 6
巴巴巴巴 7