Regele Rufus dorește să stabilească moștenitorul averii sale, adică să ofere parola de la seif celui mai deștept dintre fiii săi. Inițial, regele a avut parola formată din cifre nenule și un cod cheie (număr natural cu exact cifre, distincte, toate nenule). În fiecare an din cei ani de domnie, folosind codul cheie , Rufus a modificat câte o secvență de cifre din parolă ajungând la parola finală .
Pentru fiecare secvență se cunoaște poziția a primei cifre din secvență și poziția a ultimei cifre din secvență. Astfel, secvența este formată din cifrele situate pe pozițiile , , , , în parola .
Modificarea unei secvențe din constă în înlocuirea fiecărei apariții a cifrei cu prima cifră a lui , apoi a fiecărei apariții a cifrei cu a doua cifră a lui , , a fiecărei apariții a cifrei cu ultima cifră a lui .
Pentru a decide moștenitorul, regele le dă fiilor parola finală , codul cheie , numărul de ani de domnie și cele secvențe de cifre care au fost modificate și le cere să găsescă: parola inițială , poziția minimă din parola care a apărut în cele mai multe secvențe dintre cele modificate de rege de-a lungul celor ani de domnie și cifrele distincte care au ocupat poziția în cei ani.
Cerință
Scrieţi un program care citește numerele , , , cele cifre ale parolei finale și cele perechi de poziții și , și care rezolvă următoarele două cerinţe:
- Determină parola inițială ;
- Determină poziția minimă și cifrele distincte care au ocupat această poziție în cei ani de domnie.
Date de intrare
Fișierul de intrare mostenire.in
conține pe prima linie un număr natural reprezentând cerința din problemă care trebuie rezolvată ( sau ).
A doua linie din fișier conține cele trei numere naturale , și , separate prin câte un spațiu.
A treia linie din fisier conține cele cifre ale parolei finale , separate prin câte un spațiu.
Fiecare linie dintre următoarele , conține câte două numere naturale și , separate printr-un singur spațiu, reprezentând câte o pereche de poziții.
Date de ieșire
Dacă , fișierul de ieşire mostenire.out
va conţine pe prima linie cele cifre ale parolei initiale , separate prin câte un spațiu, în ordinea în care apar în , reprezentând răspunsul la cerința .
Dacă , fișierul de ieşire mostenire.out
va conţine pe prima linie numărul natural , iar pe a doua linie cifrele distincte care au apărut pe poziția minimă , reprezentând răspunsul la cerința . Acestea vor fi afișate în ordine crescătoare, separate prin câte un spațiu.
Restricții și precizări
- ;
- Numărul natural este format din exact cifre, distincte și nenule;
- Pozițiile cifrelor din parola sunt numerotate cu numerele distincte consecutive , , , ;
- ;
- Pentru toate perechile de poziții modificate de rege: ;
- Cel puțin o cifră din parola va fi înlocuită;
- Pentru rezolvarea corectă a cerinţei se acordă de puncte;
- Pentru rezolvarea corectă a cerinței se acordă de puncte.
Exemplul 1
mostenire.in
1
712534698 12 4
1 4 7 1 3 4 7 1 4 8 1 8
2 4
6 11
3 9
1 7
mostenire.out
2 7 3 5 4 1 3 3 7 9 2 8
Explicație
Cerinţa este 1, N=12, K=4.
Exemplul 2
mostenire.in
2
712534698 12 4
1 4 7 1 3 4 7 1 4 8 1 8
2 4
6 11
3 9
1 7
mostenire.out
3
1 2 3 7
Explicație
Cerinţa este , , .
Pozițiile care au apărut în cele mai multe secvențe sunt: , iar cifrele distincte care au ocupat succesiv această pozitie sunt . Aceste cifre se vor scrie în fișier în ordine crescătoare.