Într-o carte de matematică recreativă am găsit următoarea problemă de adunare:
(0)
Se cere să se înlocuiască literele cu cifre, astfel încât adunarea să fie corectă şi din punct de vedere matematic. Literele identice reprezintă întotdeauna cifre identice, iar litere distincte reprezintă cifre distincte. Niciun număr nu începe cu cifra 0.
Problema am studiat-o pe hârtie, şi foarte uşor am descoperit, că N=0, E=5, O=9 şi I=1, iar studiind mai amânunţit problema am dedus valoarea tuturor literelor, astfel am obţinut singura soluţie corectă: 29786+850+850=31486.
Într-o altă carte am găsit problema următoare, cu cerinţă asemănătoare:
(1)
De data asta s-a precizat, că soluţia nu este unică. Două soluţii sunt distincte, dacă există cel puţin o literă căreia i s-au atribuit valori distincte în cele două soluţii. De exemplu pentru problema (1) soluţiile 101+456+
8736=9293 şi 101+756+8436=9293 sunt distincte, chiar dacă majoritatea literelor au valori identice în cele două soluţii.
Am observat, că nu am cum să deduc toate soluţiile, pentru a afla toate soluţiile, am nevoie de un calculator personal. Aşa că m-am pus pe treabă şi am scris un program care să găsească toate soluţiile problemei.
Apoi am început să inventez alte probleme cât mai ingenioase şi am observat că numărul de soluţii variază de la o problemă la alta:
(2) (3) (4) (5) (6) (7) (8) (9) (10)
Cerinţă
Scrieţi un program care să determine numărul soluţiilor distincte pentru oricare problemă enunţată mai sus.
Date de intrare
Fişierul de intrare aritm.in
conţine pe prima linie numărul natural n. Pe următoarele n linii avem câte un cuvânt scris cu litere mari din alfabetul englezesc. Ultimul cuvânt dintre acestea reprezintă suma primelor n-1 cuvinte (numere).
Date de ieşire
Fişierul de ieşire aritm.out
va conţine un singur număr pe prima linie, ce reprezintă numărul soluţiilor distincte.
Restricţii
Fişierele de test vor conţine problemele de mai sus, ordinea cuvintelor putând fi schimbată, exceptând ultimul cuvânt ce reprezintă suma celorlaltor cuvinte şi întotdeauna este ultimul cuvânt.
Niciun număr nu începe cu cifra 0.
Pentru niciun fişier test numărul soluţiilor nu depăşeşte 32000.