- Time limit: 1.00 s
- Memory limit: 512 MB
Käytössäsi on seuraavat operaatiot:
- vaihda keskenään kaksi riviä
- vaihda keskenään kaksi saraketta
Syöte
Syötteen ensimmäisellä rivillä on kokonaisluku $n$: ruudukoiden koko.
Sitten syötteessä on $n$ riviä, jotka kuvaavat ensimmäisen ruudukon, ja lopuksi $n$ riviä, jotka kuvaavat toisen ruudukon.
Tuloste
Tulosta ensin kokonaisluku $k$: pienin operaatioiden määrä. Tulosta sitten $k$ riviä, jotka sisältävät operaatiot järjestyksessä.
Jokaisen operaation tulee olla muotoa "$1$ $a$ $b$" (vaihda rivit $a$ ja $b$) tai "$2$ $a$ $b$" (vaihda sarakkeet $a$ ja $b$).
Jos mitään ratkaisua ei ole olemassa, tulosta vain luku $-1$.
Esimerkki 1
Syöte:
3
1 2 3
4 5 6
7 8 9
2 1 3
8 7 9
5 4 6
Tuloste:
2
2 1 2
1 2 3
Esimerkki 2
Syöte:
3
6 3 7
8 1 4
9 2 5
8 5 2
7 3 1
9 4 6
Tuloste:
-1
Osatehtävä 1 (12 pistettä)
- $1 \le n \le 3$
- $1 \le n \le 50$
- $1 \le n \le 500$