Module: Modèles en programmation dynamique


Problem

4 /7


Compression de chaîne

Problem

Chloé veut écrire une lettre à son amie. Lettre - chaîne s, composée de lettres latines minuscules.
Malheureusement, dès que Chloé a commencé à écrire la lettre, elle s'est rendu compte qu'elle était trop longue et qu'il faudrait beaucoup de temps pour l'écrire dans son intégralité. Elle veut donc écrire une version compressée de la chaîne s au lieu de la chaîne elle-même.

Une version compressée de la chaîne s — la séquence de chaînes c1, s1, c2, s2,  ..., ck, sk, où ci — représentation décimale de ai (sans zéros non significatifs) et si — une chaîne de lettres latines minuscules. Si Chloé écrit la chaîne s1 exactement une1 fois, alors s2 exactement une2 fois, et ainsi sur , il produira la chaîne s.
La longueur de la version compressée est |c1| + |s1| + |c2|  +  |s2|... |ck| + |sk|. Parmi toutes les versions compressées, Chloé veut choisir celle qui a la longueur la plus courte. Aidez Chloé à trouver la longueur la plus courte possible.

Saisie :
La ligne unique de l'entrée contient une chaîne s composée de lettres latines minuscules (1 ≤ |s| ≤ 5000).

Sortie :
Imprimer un seul entier — la longueur minimale de la version compressée de la chaîne s.

Exemples :
 
Entrée Sortie
aaaaaaaaa 3
abcab 6
cczabababab 7


Explications :
Dans le premier exemple, Chloé sélectionnera la version suivante : c1 — 10, s1 &mdash ; a.
Dans le deuxième exemple, Chloé sélectionnera la version suivante : c1 — 1, s1 &mdash ; abcab.
Dans le troisième exemple, Chloé choisira la version suivante : c1 — 2, s1 &mdash ; c, c2 — 1, s2 &mdash ; z, c3 — 4, s3 &mdash ; ab.