304328: CF825F. String Compression

Memory Limit:512 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

String Compression

题意翻译

给定一个串s,其中重复出现的子串可以压缩成 “数字+重复的子串” 的形式,数字算长度。 只重复一次的串也要压。 求压缩后的最小长度。

题目描述

Ivan wants to write a letter to his friend. The letter is a string $ s $ consisting of lowercase Latin letters. Unfortunately, when Ivan started writing the letter, he realised that it is very long and writing the whole letter may take extremely long time. So he wants to write the compressed version of string $ s $ instead of the string itself. The compressed version of string $ s $ is a sequence of strings $ c_{1},s_{1},c_{2},s_{2},...,c_{k},s_{k} $ , where $ c_{i} $ is the decimal representation of number $ a_{i} $ (without any leading zeroes) and $ s_{i} $ is some string consisting of lowercase Latin letters. If Ivan writes string $ s_{1} $ exactly $ a_{1} $ times, then string $ s_{2} $ exactly $ a_{2} $ times, and so on, the result will be string $ s $ . The length of a compressed version is $ |c_{1}|+|s_{1}|+|c_{2}|+|s_{2}|...\ |c_{k}|+|s_{k}| $ . Among all compressed versions Ivan wants to choose a version such that its length is minimum possible. Help Ivan to determine minimum possible length.

输入输出格式

输入格式


The only line of input contains one string $ s $ consisting of lowercase Latin letters ( $ 1<=|s|<=8000 $ ).

输出格式


Output one integer number — the minimum possible length of a compressed version of $ s $ .

输入输出样例

输入样例 #1

aaaaaaaaaa

输出样例 #1

3

输入样例 #2

abcab

输出样例 #2

6

输入样例 #3

cczabababab

输出样例 #3

7

说明

In the first example Ivan will choose this compressed version: $ c_{1} $ is 10, $ s_{1} $ is a. In the second example Ivan will choose this compressed version: $ c_{1} $ is 1, $ s_{1} $ is abcab. In the third example Ivan will choose this compressed version: $ c_{1} $ is 2, $ s_{1} $ is c, $ c_{2} $ is 1, $ s_{2} $ is z, $ c_{3} $ is 4, $ s_{3} $ is ab.

Input

题意翻译

给定一个串s,其中重复出现的子串可以压缩成 “数字+重复的子串” 的形式,数字算长度。 只重复一次的串也要压。 求压缩后的最小长度。

加入题单

上一题 下一题 算法标签: