Puzzle de Criptaritmética

Você dispõe de três strings a, b e c. O seu objetivo é atribuir um dígito a cada caractere de tal forma que a equação a + b = c seja satisfeita. Garante-se que existe pelo menos uma forma de atribuir dígitos para as strings dadas que respeite esta condição.
Uma atribuição de dígitos é válida se cumprir as seguintes regras:
  1. Cada caractere nas strings a, b e c representa um dígito único de 0 a 9.
  1. Os números resultantes não podem ter zeros à esquerda, exceto no caso do próprio número 0, que é formado por um único dígito zero.

Entrada

A entrada consiste em três linhas, cada uma contendo uma string. As strings a, b e c são compostas apenas por letras minúsculas em inglês, e seus comprimentos variam entre 1 e 15 (inclusive).
Garante-se que existe pelo menos uma forma de atribuir dígitos que satisfaça a equação dada.

Saída

Imprima os três números correspondentes na mesma ordem.
Se houver mais de uma solução possível, você pode apresentar qualquer uma das soluções válidas.

Exemplos

Entrada
Saída
send more money
9567 1085 10652
a b b
0 3 3

Constraints

Time limit: 8 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue