Într-un joc de domino, fiecare piesă este împărțită în două zone, în fiecare zonă fiind înscris un număr natural. Dacă jocul are dimensiunea , în joc vor exista toate piesele distincte care se pot forma cu numere cuprinse între şi .
Două piese sunt considerate identice dacă au înscrise aceleași numere, indiferent de ordinea lor. Astfel, piesele și sunt identice. De exemplu, jocul de dimensiune va avea piese distincte:
, , , , , .
Suma tuturor numerelor de pe aceste piese este . Problema are două cerinţe:
- Dat fiind un şir format din numere naturale nenule reprezentând dimensiunile unor jocuri de domino, să se determine pentru fiecare joc suma tuturor numerelor înscrise pe piesele din jocul respectiv.
- Dat fiind un şir format din numere naturale nenule reprezentând sumele tuturor numerelor de pe piesele unor jocuri de domino, se construieşte mai întâi un şir de cifre, notat cu , scriind în ordine toate numerele din şirul dat, fără spaţii între ele. Se cere să se construiască un şir strict crescător de numere naturale, notat cu , parcurgând alternativ cifrele din şirul de la stânga la dreapta și de la dreapta la stânga după cum urmează:
- primul număr din este format din prima cifră din șirul ;
- al doilea număr din se construieşte concatenând (alipind) cifrele din , începând de la dreapta către stânga, până când obţinem un număr strict mai mare decât primul număr din ;
- al treilea număr din se construieşte concatenând cifrele din de la stânga către dreapta (începând cu prima cifră care nu a fost deja utilizată), până când obţinem un număr strict mai mare decât precedentul din ;
- al patrulea număr din se construieşte concatenând din nou cifrele din de la dreapta la stânga (începând cu cea mai din dreapta cifră care nu a fost deja utilizată), până când obţinem un număr strict mai mare decât al treilea din ;
- se continuă astfel alternativ, până când nu se mai poate forma un număr strict mai mare decât ultimul număr adăugat în .
Cerință
Scrieți un program care rezolvă cerințele și descrise în enunț.
Date de intrare
Fișierul de intrare domino.in
conține pe prima linie un număr natural reprezentând cerința care trebuie rezolvată ( sau ). Pe a doua linie se află numărul natural . Pe a treia linie se află numere naturale nenule separate prin câte un spaţiu , , , .
Date de ieșire
Fişierul de ieşire domino.out
va conține o singură linie:
- Dacă , pe prima linie se vor afișa numere naturale separate prin câte un spaţiu; al -lea număr afişat reprezintă suma numerelor din jocul de domino având dimensiunea ().
- Dacă , pe prima linie se vor afișa în ordine, separate prin câte un spațiu, valorile din șirul determinat conform regulilor din enunţ.
Restricții și precizări
- ;
- Dacă , , iar dacă , , pentru .
- Numerele din şirul vor fi afişate fără zerouri nesemnificative (de exemplu, dacă în urma aplicării regulilor din enunţ în şirul se obţine numărul se afişează ).
- Pentru teste în valoare de de puncte cerinţa este .
Exemplul 1
domino.in
1
5
2 3 15 4 7
domino.out
12 30 2040 60 252
Explicație
Cerinţa este , deci trebuie să determinăm sumele numerelor din jocurile de dimensiune , , , şi .
Exemplul 2
domino.in
2
5
12 30 2040 60 252
domino.out
1 2 23 52 204
Explicație
Din șirul 12 30 2040 60 252
se formează:
Șirul | Șirul | Sensul de formare |
---|---|---|
Nu se mai poate forma un număr | - |