Compresión de cadenas por regla de grupos consecutivos
Rust
Hard
strings
Tarea «Compresión de cadenas por regla de grupos consecutivos»
Dada una cadena compuesta por letras latinas minúsculas. Es necesario implementar un algoritmo de compresión de cadenas: si en la cadena aparece un grupo de caracteres iguales de longitud mayor a 1, ese grupo se reemplaza por el carácter y el número de repeticiones (el número se escribe sin ceros a la izquierda). Si el grupo consta de un solo carácter, permanece sin cambios. Muestre la cadena comprimida resultante. La longitud de la cadena original no supera 10^5.
Formato de entrada
En la entrada se proporciona una única cadena S, compuesta por letras latinas minúsculas (a-z). La longitud de la cadena es de 1 a 10^5.
Formato de salida
Muestre una única cadena: la versión comprimida de la cadena original.
Ejemplos
Ejemplo 1
ENTRADA
abc
SALIDA
abc
Ejemplo 2
ENTRADA
aabbaa
SALIDA
a2b2a2
Ejemplo 3
ENTRADA
97 98 99 97 98 99
SALIDA
97 98 92 97 98 92
main.rs