String Compression
Problem
アルファベットの小文字と数字からなる文字列 S が与えられる。次の手順で文字列 S の長さを圧縮する。
- 文字列内の文字の順番を任意の順番に入れ替える。
例: "0ig3he12fz99" → "efghiz012399"
- 次の操作を任意の回数行う。
- 文字列内にある、"abcdefghijklmnopqrstuvwxyz"の連続した部分文字列を選び、(先頭の文字)'-'(末尾の文字)に置き換える。
例: "efghiz012399" → "e-iz012399"
- 文字列内にある、公差が1であるような数字列("0123456789"の連続した部分文字列)を選び、(先頭の数字)'-'(末尾の数字)に置き換える。
例: "e-iz012399" → "e-iz0-399"
文字列 S を圧縮して得られる文字列の長さの最小値を求めよ。
Input
文字列 S が1行で与えられる。
Constraints
- 1 ≤ |S| ≤ 100
- 文字列Sはアルファベットの小文字と数字のみを含む
Output
文字列 S を圧縮して得られる文字列の長さの最小値を1行に出力せよ。圧縮できない場合は元の文字列 S の長さを出力せよ。
Sample Input 1
0ig3he12fz99
Sample Output 1
9
Sample Input 2
1122334455
Sample Output 2
6