Compresión de cadenas a partir de un arreglo de caracteres

La función recibe un arreglo de caracteres. Comprime el arreglo en una cadena usando las siguientes reglas. Para cada grupo de caracteres que se repiten consecutivamente:

  • Si la cantidad de caracteres repetidos es uno, agrega a la cadena solo este carácter.
  • Si la cantidad n de caracteres x repetidos es mayor que uno, agrega a la cadena "x" + n.

Ejemplos

compress(["t", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "e", "s", "s", "s", "h"]) ➞ "te14s3h"

compress(["a", "a", "b", "b", "c", "c", "c"]) ➞ "a2b2c3"

compress(["a"]) ➞ "a"

compress(["a", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b", "b"]) ➞ "ab12"

compress(["a", "a", "a", "b", "b", "a", "a"]) ➞ "a3b2a2"

Notas

  • Puedes encontrar una versión recursiva de este desafío en este enlace.