Adriana este pasionată de matematică. Recent, a aflat despre numere cu aspect de munte, pe care le-a numit numere-munte și numere cu aspect de vale, pe care le-a numit numere-vale.
Un număr-munte are o singură cifră denumită cifră-vârf, toate cifrele lui au valori strict crescătoare de la prima cifră până la cifra-vârf și au valori strict descrescătoare de la cifra-vârf la ultima cifră. Un număr-vale are toate cifrele cu valori strict descrescătoare de la prima cifră până la ultima cifră. De exemplu, numerele și sunt numere-munte, numerele și sunt numere-vale. Numerele nu sunt nici numere-munte, nici numere-vale.
Având un șir de numere naturale, Adriana trebuie să obțină următoarele rezultate:
- Câte numere-munte și câte numere-vale sunt în șir.
- Care este cel mai mic număr-munte care este palindrom, obținut prin utilizarea unui număr maxim de cifre diferite între ele, dintre toate cifrele conținute de numerele-munte din șir.
Un număr natural este palindrom dacă numărul citit de la stânga la dreapta coincide cu numărul citit de la dreapta la stânga.
Cerință
Scrieţi un program care, cunoscând numărul cerinței (egal cu sau cu ), numărul și un șir de numere naturale, va obține:
- pentru cerința : Să se afișeze câte numere-munte și câte numere-vale sunt în șir.
- pentru cerința : Să se afișeze cel mai mic număr-munte care este palindrom și este obținut prin utilizarea unui număr maxim de cifre diferite între ele, dintre toate cifrele conținute de numerele-munte din șir.
Date de intrare
Fişierul de intrare numere.in
conţine pe prima linie două numere naturale și , ce reprezintă numărul de numere din șirul dat și respectiv numărul cerinței ce trebuie rezolvată. Pe a doua linie din fișier se află numere naturale ale șirului dat, separate între ele printr-un spațiu.
Date de ieșire
- Dacă cerința este , fişierul de ieşire
numere.out
conţine pe prima linie două numere, separate prin spațiu, ce reprezintă câte numere-munte și câte numere-vale sunt în șir. - Dacă cerința este , fişierul de ieşire
numere.out
conţine pe prima linie un număr natural ce reprezintă cel mai mic număr-munte care este palindrom și este obținut prin utilizarea unui număr maxim de cifre diferite între ele, dintre toate cifrele conținute de numerele-munte din șir.
Restricții și precizări
- Fiecare număr din șir are cel puțin cifre și cel mult cifre nenule
- În șirul de numere dat, există cel puțin un număr-munte și cel puțin un număr-vale (cerința ).
- Pentru testele utilizate, se asigură că se obține un număr-munte care este palindrom (cerința ).
- Pentru rezolvarea corectă a primei cerințe se obțin de puncte, iar pentru rezolvarea corectă a celei de a doua cerințe se obțin de puncte. Se acordă puncte din oficiu.
Exemplul 1
numere.in
7 1
15732 8321 1734 143 2891 2981 1152
numere.out
4 1
Explicație
Pentru cerința , în șirul dat sunt numere-munte: și un număr vale :.
Exemplul 2
numere.in
7 2
145732 163 3521 122 271 261 3121
numere.out
12356765321
Explicație
Pentru cerința , din șirul de numere dat se obține numărul-munte palidrom utilizând un număr maxim de cifre diferite între ele :, dintre cifrele numerelor-munte .
Exemplul 3
numere.in
7 2
261 146732 1583 35921 5522 271 9182
numere.out
4
Explicație
Pentru cerința , din șirul de numere dat se obține numărul-munte palidrom .