Inspirată de faimosul Perspico, Miruna se gândeşte la următorul joc: se dă o matrice cu linii şi coloane în care fiecare număr între şi apare exact o singură dată. O mutare validă în acest joc constă din interschimbarea elementului cu unul dintre cei vecini ai săi. Miruna câştigă dacă reuşeşte să aducă matricea în următoarea configuraţie:
- Pe orice poziţie , cu excepţia poziţiei , trebuie să se găsească valoarea ;
- Pe poziţia trebuie să se găsească valoarea .
Cerinţă
Fiind dată o configuraţie a jocului ajutaţi-o pe Miruna să îl termine, iar ea vă va răsplăti cu un pupic ;).
Date de intrare
Pe prima linie din fişierul de intrare perspico.in
se află numere întregi şi , având semnficaţia din enunţ. Următoarele linii vor conţine câte numere naturale, reprezentând elementele matricei.
Date de ieșire
În fişierul de ieşire perspico.out
se vor scrie mai multe numere naturale din intervalul , reprezentând mutările efectuate, codificarea lor fiind următoarea:
- – Dacă elementul se interschimbă cu cel de deasupra.
- – Dacă elementul se interschimbă cu cel din dreapta.
- – Dacă elementul se interschimbă cu cel de dedesubt.
- – Dacă elementul se interschimbă cu cel din stânga.
Restricții și precizări
- Dacă există mai multe soluţii poate fi afişată oricare.
- Se garantează că pe toate fişierele de test există cel puţin o soluţie.
Exemplu
perspico.in
3 3
0 1 3
4 2 6
7 5 8
perspico.out
3
Explicație
Mutările efectuate vor fi în direcţiile: E
, S
, S
, E
.
După efectuarea lor matricea va arăta astfel:
1 2 3
4 5 6
7 8 0