Purpose: Brute Force, vectors, next permutation

SEND + MORE = MONEY

Description:

In this program you will write a program to solve puzzles like the one above. In the above puzzle

you are to change the letters into digits chosen from {0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }, such that

all the same letters represent the same number which makes the above equation correct. Your

program should be able to handle any three word puzzle with the operations addition, subtraction,

division, multiplication and exponentiation.

Input:

The input will come entirely from the keyboard (stdin) and will consist of typing a puzzle. A

puzzle will be on a single line containing a three strings (in capital letters). The first two

strings will be separated by an operator (+, – , *) and the last two strings will be separated

by a = sign. There will be a space between each string and symbol.

Output:

There should be one line of output. The output will be the equation repeated with digits

replacing the letters. Leading zeros should not need to be printed. If more than one solution

is possible then list the one, where the first word has the lowest value. If not solution is

possible write no solution

Sample Input

TO + GET = HER

CAT * CAN = NATION

Corresponding Sample Output

91 + 249 = 340

no solution