Problemas
철기는 숫자로 이루어진 전화번호를 가지고 있다.
철기는 기억력이 좋지 않아 전화번호를 연속된 전화번호의 묶음으로 나눠보려고 한다.
각각의 전화번호는 2개 혹은 3개의 자리로 이뤄지며, 얼마나 잘 나눠졌는지는 다음과 같이 평가 가능하다.
* Excellent : 그룹 내의 전화번호의 숫자가 다 같은 경우, 000 혹은 77 * Good : 2개의 숫자가 같은 경우 030, 229, 혹은 166 * Usual : 전부 숫자가 다른 경우 123 혹은 90
전화번호를 잘 나눴다는 평가치는 2 * (excellent 그룹의 개수) + (good 그룹의 개수)로 평가 되며,
높을수록 전화번호를 기억하기 쉽게 나눈 것이다.
전화번호를 잘 나눠서 평가치가 최대가 되게끔 하는 새로운 전화번호를 출력하는 프로그램을 만들어,
기억력이 좋지 않은 철기를 도와주자 나눠진 연속된 그룹 사이에는 대쉬('-')표시가 들어가게 되며,
출력하는 전화번호는 사전순(아스키코드 순서)으로 가장 빠른 전화번호가 출력되어야 한다.
Entrada
입력은 숫자로 이뤄진 문자열이 들어온다. 이 문자는 나눠지지 않은 전화번호를 뜻하며, 문자열의 길이는 최대 50자이다.
Salida
입력에 대해 가장 평가치가 좋고 사전순으로 가장 빠른 전화번호를 출력한다.
Ejemplo #1
5088638
50-88-638
Ejemplo #2
0123456789
01-23-45-67-89