Dado un acertijo de alfamética, encuentra la solución correcta.
La alfamética es un acertijo en el que las letras de las palabras se reemplazan por números.
Por ejemplo, SEND + MORE = MONEY:
S E N D
M O R E +
-----------
M O N E Y
Si reemplazas esas letras por números válidos, obtienes:
9 5 6 7
1 0 8 5 +
-----------
1 0 6 5 2
Esto es correcto porque cada letra se reemplaza por un número distinto y las palabras, convertidas en números, forman una suma válida.
Cada letra debe representar un dígito distinto, y el primer dígito de un número de varios dígitos no puede ser cero.
Tu script recibirá el rompecabezas alfamético como un solo string a través de
la entrada estándar (stdin). El string del rompecabezas sigue el formato
WORD1 + WORD2 + ... == RESULT.
Por ejemplo:
SEND + MORE == MONEY
Si el rompecabezas tiene solución, imprime una sola línea que consista en
pares LETTER=DIGIT separados por espacios, ordenados alfabéticamente por letra.
Para el ejemplo de arriba, la salida debería ser:
D=7 E=5 M=1 N=6 O=0 R=8 S=9 Y=2
Si el rompecabezas tiene varias soluciones válidas, puedes imprimir cualquiera de ellas.
Si el rompecabezas no tiene solución, no imprimas nada (una línea vacía).
Regístrate en Exercism para aprender y dominar AWK con 3 conceptos92 ejercicios y mentoría humana real, todo gratis.