Fácil 0 resolvidos 0% de aceitação

Pangram Check

A pangram contains every English letter at least once.

O que você vai aprender

  • Reunir as letras distintas de um texto
  • Ignorar maiúsculas e caracteres que não são letras
  • Comparar com o alfabeto de 26 letras

Problema

A pangram contains every English letter at least once. Determine whether the text is a pangram. Ignore case, spaces, digits, and punctuation.

Implement pangram_check(text).

Input

text: The text to inspect.

Output

Return true if all 26 letters appear, otherwise false.

Restrições

0 ≤ text length ≤ 100,000. Input contains printable ASCII characters. Only letters A–Z and a–z count.

Exemplos

Exemplo 1
Entrada:
text = "The quick brown fox jumps over the lazy dog."

Saída esperada:
expected = True
Entrada:
std::string text = "The quick brown fox jumps over the lazy dog.";

Saída esperada:
bool expected = true;
Entrada:
string text = "The quick brown fox jumps over the lazy dog.";

Saída esperada:
bool expected = true;

Explicação

Every letter from a through z appears at least once. Capital T counts as t.

Exemplo 2
Entrada:
text = "abcdefghijklmnopqrstuvwxy"

Saída esperada:
expected = False
Entrada:
std::string text = "abcdefghijklmnopqrstuvwxy";

Saída esperada:
bool expected = false;
Entrada:
string text = "abcdefghijklmnopqrstuvwxy";

Saída esperada:
bool expected = false;

Explicação

This text contains a through y, but it has no z. One missing letter makes it false.

Como abordar

Tente sozinho primeiro e depois abra uma dica de cada vez.

Dica 1

Normalize o texto para que maiúsculas e minúsculas não façam diferença.

Dica 2

Controle quais das 26 letras já apareceram pelo menos uma vez.

Dica 3

Ignore completamente qualquer caractere que não seja letra, incluindo espaços e pontuação.

Complexidade esperada

tempo O(n), espaço extra O(1)

Referências

Este desafio foi adaptado para o CodeUtility. Siga o enunciado e as restrições acima.

Aprenda com outros

Soluções da comunidade

Ainda não há soluções publicadas. Resolva este desafio para compartilhar a primeira.