natanpires / anagram-challenge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Anagram CC

Linguagem => Python Versão => 2.7.17


DESAFIO

  1. Leia a expressão (que pode ser uma frase ou apenas uma palavra) a ser usada para a criação dos anagramas da linha de comando. Apenas as letras de “A” a “Z” deverão ser consideradas (ignore espaços e converta todas as letras minúsculas para maíusculas). Retorne erro e aborte a execução se caracteres inválidos forem encontrados na expressão (qualquer caracter não alfabético que não seja espaço, incluindo números, pontuação, ou caracteres acentuados).
    
  2. Leia uma lista de palavras válidas do arquivo palavras.txt (Download). O arquivo é formatado com uma palavra por linha, com palavras da língua inglesa (Nota: apesar de várias tentativas, o autor não conseguiu achar uma lista “limpa” de palavras da língua portuguesa).
    
  3. Imprima todas as combinações possíveis de anagramas (sem repetição de linhas ou palavras). Os anagramas devem conter apenas palavras válidas (lidas do arquivo acima).
    
  4. O formato de saída deve conter múltiplas linhas (uma por anagrama), com as palavras ordenadas dentro de cada linha (veja exemplo abaixo).
    

    $ ./anagrama "vermelho" ELM HO REV ELM OH REV OHM REVEL LEVER OHM ELM HOVER HOLM VEER HELM OVER HELM ROVE

  5. O programa deve ser capaz de calcular e imprimir a lista de anagramas possíveis para uma expressão de até 16 caracteres em menos de 60 segundos.
    

Referencias

https://github.com/OsProgramadores/op-desafios/tree/master/desafio-06 https://web.stanford.edu/class/archive/cs/cs106b/cs106b.1176/assn/anagrams.html#implementation

About


Languages

Language:Python 100.0%