Fie un număr natural nenul şi un şir de numere naturale nenule, fiecare număr din şir având cel mult cifre. Şirul dat se „maximizează” prin aplicarea următoarelor transformări:
: Fiecare număr din şir este înlocuit cu cel mai mare număr care se poate obţine prin aranjarea tuturor cifrelor lui . De exemplu, pentru , prin aranjarea cifrelor, se obţin numerele: , , , , , , cel mai mare număr fiind . Astfel, se va înlocui în şir cu numărul .
: Se schimbă ordinea numerelor din şirul obţinut după aplicarea transformării astfel încât numărul obţinut prin alipirea tuturor numerelor din şir, în ordinea în care apar după schimbare, să fie cel mai mare posibil.
De exemplu, pentru şi şirul: , , , după aplicarea transformării noul şir este format din numerele: , , . Din acest şir, se pot obţine, prin schimbarea ordinii numerelor, următoarele şiruri:
- , ,
- , ,
- , ,
- , ,
- , ,
- , ,
Numerele care rezultă prin alipirea numerelor din fiecare şir obţinut sunt:
- ;
- ;
- ;
- ;
- ;
- .
După aplicarea transformării , şirul „maximizat” este: deoarece cel mai mare număr dintre cele obţinute este .
Cerinţă
Scrieţi un program care să citească numărul natural nenul şi cele numere naturale nenule din şir şi care să determine:
- cel mai mare număr din şirul de numere obţinut în urma aplicării transformării ;
- numărul obţinut prin alipirea numerele din şirul „maximizat” rezultat în urma aplicării transformării .
Date de intrare
Fişierul de intrare max.in
conţine două linii. Pe prima linie este scris numărul natural nenul , iar pe a doua linie sunt scrise cele numere naturale nenule din şir, separate prin câte un spaţiu.
Date de ieşire
Fişierul de ieşire max.out
va conţine:
- pe prima linie numărul natural , reprezentând cel mai mare număr din şirul de numere obţinut în urma aplicării transformării
- pe a doua linie numărul natural , reprezentând numărul obţinut prin alipirea numerelor din şirul „maximizat”, rezultat în urma aplicării transformării .
Restricţii şi precizări
- Numărul este număr natural,
- Cele numere din şirul citit sunt numere naturale nenule, fiecare număr din şir având cel mult cifre
- Dacă un număr din şir are cel puţin o cifră nulă iar prin aranjarea cifrelor acestui număr se obţine un alt număr care are prima cifră , atunci această cifră se ignoră
- Numărul natural determinat poate avea cel mult de cifre
- Se acordă punctaje parţiale: cerinţa , din punctaj, cerinţa , din punctaj
Exemplu
max.in
9
34 23 9 43 21 67 121 79 213
max.out
321
9977643433232121211
Explicaţie
După aplicarea transformării , şirul devine: . Cel mai mare număr din acest şir este . După aplicarea transformării , şirul maximizat este: iar numărul