Definim un puzzle de numere ca fiind adunarea a două numere naturale, în care o parte dintre cifre au fost înlocuite cu caracterul *
. De exemplu, pentru adunarea:
unele dintre puzzle-urile corespunzătoare pot fi:
Cerinţă
Să se scrie un program care determină o adunare din care provine un puzzle dat.
Date de intrare
Fișierul de intrare puzzle.in
va conține mai multe teste. Pe prima linie se va găsi un număr natural reprezentănd numărul de puzzle-uri din fișier. Pe următoarele linii se vor găsi triplete, fiecare triplet reprezentând un puzzle format din caractere *
și eventual cifre.
Date de ieșire
Fișierul de ieșire puzzle.out
va conține exact linii cu numere naturale, câte trei linii pentru fiecare puzzle din fișierul de intrare. Prima și cea de-a doua linie a unui puzzle vor conține numerele care urmează să fie adunate, iar a treia linie va conține suma acestora, în ordinea citirii din fișierul de intrare.
Restricții și precizări
- ;
- Toate numerele fiecărui puzzle nu pot avea prima cifră ;
- Dacă există mai multe adunări corecte corespunzătoare unui puzzle, se va accepta oricare dintre acestea.
- Lungimea oricărei linii a unui puzzle nu depășește de caractere;
- Se garantează existența unei soluții pentru toate testele de intrare;
- Pentru teste în valoare de puncte lungimea oricărui număr din fiecare puzzle va fi mai mică sau egal cu ;
- Pentru teste în valoare de încă de puncte lungimea oricărui număr din fiecare puzzle va fi mai mică sau egal cu ;
- Pentru teste în valoare de încă puncte lungimea oricărui număr din fiecare puzzle va fi mai mică sau egal cu ;
Exemplul 1
puzzle.in
1
*3*4
78*
10123
puzzle.out
9334
789
10123
Explicație
Fișierul de intrare conține un puzzle:
O adunare corectă corespunzătoare acestui puzzle este:
Exemplul 2
puzzle.in
2
**
*
**7
75
*
*6
puzzle.out
98
9
107
75
1
76
Explicație
Fișierul de intrare conține două puzzle-uri.
Pentru primul puzzle o adunare corectă este:
Pentru al doilea puzzle o adunare corectă este: