Percursos
/
AWK
AWK
/
Exercícios
/
Alfamética
Alfamética

Alfamética

Difícil

Instruções

Dado um puzzle de alfamética, encontra a solução correta.

A alfamética é um puzzle em que as letras das palavras são substituídas por números.

Por exemplo, SEND + MORE = MONEY:

  S E N D
  M O R E +
-----------
M O N E Y

Substituindo estas letras por números válidos, obtemos:

  9 5 6 7
  1 0 8 5 +
-----------
1 0 6 5 2

Isto está correto porque cada letra é substituída por um número diferente e, traduzidas as palavras em números, formam uma soma válida.

Cada letra tem de representar um algarismo diferente, e o algarismo inicial de um número com vários algarismos não pode ser zero.

Entrada

O teu programa vai receber o enigma alfamético como uma única string através da entrada padrão (stdin). A string do enigma segue o formato WORD1 + WORD2 + ... == RESULT.

Por exemplo:

SEND + MORE == MONEY

Saída

Se o enigma tiver uma solução, imprime uma única linha composta por pares LETTER=DIGIT separados por espaços, ordenados alfabeticamente pela letra.

Para o exemplo acima, a saída deve ser:

D=7 E=5 M=1 N=6 O=0 R=8 S=9 Y=2

Se o enigma tiver múltiplas soluções válidas, imprimir qualquer uma delas é aceitável.

Se o enigma não tiver solução, não imprimas nada (uma linha vazia).

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

Estás pronto para começar Alfamética?

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