Problema
Replace every space in text with a dash -, and convert all letters to lowercase.
Implement slugify_spaces(text).
Input
text: The text to convert.
Output
Return the converted text.
Restricciones
0 ≤ length of text ≤ 10,000
Ejemplos
Entrada:
text = "Hello World"
Salida esperada:
expected = "hello-world"
Entrada:
std::string text = "Hello World";
Salida esperada:
std::string expected = "hello-world";
Entrada:
string text = "Hello World";
Salida esperada:
string expected = "hello-world";
Explicación
The space becomes a dash and letters are lowercased: "hello-world".
Entrada:
text = "Learn To Code"
Salida esperada:
expected = "learn--to-code"
Entrada:
std::string text = "Learn To Code";
Salida esperada:
std::string expected = "learn--to-code";
Entrada:
string text = "Learn To Code";
Salida esperada:
string expected = "learn--to-code";
Explicación
Each space becomes its own dash: "learn--to-code".
Cómo abordarlo
Inténtalo primero por tu cuenta y luego abre las pistas una a una.
Pista 1
Transforma toda la cadena aplicando a la vez minúsculas y reemplazo de espacios.
Pista 2
Un solo recorrido puede construir el resultado mientras procesa cada carácter.
Pista 3
Ten cuidado de no cambiar los caracteres que no sean letras, salvo los espacios.
Complejidad esperada
tiempo O(n), espacio extra O(n)
Referencias
Este reto está adaptado para CodeUtility. Sigue el enunciado y las restricciones indicadas arriba.