Anagrama

Anagrama

Médio

Introdução

Numa venda de garagem, encontras uma bela máquina de escrever vintage a um preço de saldo! Com entusiasmo, corres para casa, colocas uma folha de papel e começas a escrever à máquina. No entanto, o teu entusiasmo esmorece quando examinas o resultado: todas as palavras saem baralhadas! Por exemplo, imprime "stop" em vez de "post" e "least" em vez de "stale". Com cuidado, tentas outra vez, mas agora imprime "spot" e "slate". Depois de algumas experiências, descobres que há um atraso aleatório antes de cada letra ser impressa. Isso baralha a ordem. Agora percebes porque é que a venderam por tão pouco dinheiro!

Percebes que esta peculiaridade te permite gerar anagramas, que são palavras formadas ao reorganizar as letras de outra palavra. Contente com a tua descoberta, passas o resto do dia a gerar centenas de anagramas.

Instruções

Dada uma palavra-alvo e uma ou mais palavras candidatas, a tua tarefa é encontrar as candidatas que são anagramas da palavra-alvo.

Um anagrama é um rearranjo de letras que forma uma nova palavra: por exemplo, "owns" é um anagrama de "snow". Uma palavra não é um anagrama de si própria: por exemplo, "stop" não é um anagrama de "stop".

A palavra-alvo e as palavras candidatas são compostas por um ou mais carateres alfabéticos ASCII (A-Z e a-z). Os carateres em minúscula e em maiúscula são equivalentes: por exemplo, "PoTS" é um anagrama de "sTOp", mas "StoP" não é um anagrama de "sTOp". As palavras que precisas de encontrar devem ser retiradas das palavras candidatas, com as mesmas maiúsculas e minúsculas.

Dada a palavra-alvo "stone" e as palavras candidatas "stone", "tones", "banana", "tons", "notes" e "Seton", os anagramas que precisas de encontrar são "tones", "notes" e "Seton".

Instruções específicas do percurso

O resultado deve ser uma string com os anagramas separados por uma vírgula (por exemplo, "hello,world").

Tens de devolver os anagramas pela mesma ordem em que aparecem nas palavras candidatas.

Editar via GitHub A ligação abre numa nova janela ou separador
COBOL Exercism

Estás pronto para começar Anagrama?

Inscreve-te no Exercism para aprenderes e dominares COBOL com 46 exercícios, e mentoria humana real, tudo grátis.