Problema
Converta text para o formato title case: a primeira letra de cada palavra deve ficar em maiúsculo e as demais letras em minúsculo. As palavras são separadas por espaços simples.
Implemente title_case(text).
Entrada
text: Palavras em minúsculo ou com letras misturadas, separadas por espaços simples.
Saída
Retorne o texto no formato title case.
Restrições
0 ≤ comprimento ≤ 10.000 (letras e espaços)
Exemplos
Entrada:
text = "hello world"
Saída esperada:
expected = "Hello World"
Entrada:
std::string text = "hello world";
Saída esperada:
std::string expected = "Hello World";
Entrada:
string text = "hello world";
Saída esperada:
string expected = "Hello World";
Explicação
"hello" → "Hello" e "world" → "World".
Entrada:
text = "tHE qUICK fox"
Saída esperada:
expected = "The Quick Fox"
Entrada:
std::string text = "tHE qUICK fox";
Saída esperada:
std::string expected = "The Quick Fox";
Entrada:
string text = "tHE qUICK fox";
Saída esperada:
string expected = "The Quick Fox";
Explicação
As demais letras ficam em minúsculo: "The Quick Fox".
Como abordar
Tente sozinho primeiro e depois abra uma dica de cada vez.
Dica 1
Separe o texto em palavras e trate cada uma de forma independente.
Dica 2
Coloque a primeira letra em maiúscula e o restante em minúscula, depois junte as palavras com espaços.
Dica 3
Cuidado com entrada vazia para não tentar acessar uma primeira letra inexistente.
Complexidade esperada
tempo O(n), espaço extra O(n)
Referências
Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.