magic

Jocul Tabla Magica este compus din 8 piese patrate, numerotate cu valorile de la 1 la 8, dispuse pe doualinii, similar unui tablou bidimensional cu 2 linii si 4 coloane. O configuratie posibila este cea din figura de mai jos:

1
4
5
8
6
3
2
7

Sunt posibile modificari ale configuratiei prin utilizarea urmatoarelor mutari:
Mutarea A : Patratele de pe pozitiile T[1][1], T[1][2],T[2][1],T[2][2] se rotesc în sensul acelor de ceasornic.
Mutarea B : Patratele de pe pozitiile T[1][2], T[1][3],T[2][2],T[2][3] se rotesc în sensul acelor de ceasornic.
Mutarea C : Patratele de pe pozitiile T[1][3], T[1][4],T[2][3],T[2][4] se rotesc în sensul acelor de ceasornic.
Mutarea D : Patratele de pe pozitiile T[1][1] si T[2][1] se interschimbã.

Cerinta
Scrieti un program care sa determine numarul minim de mutari necesare pentru a ajunge de la o configuratie initiala la o configuratie finala.

Date de intrare
Fisierul magic.in contine:
- pe primele doua linii câte 4 valori reprezentând configuratia initiala;
- pe urmatoarele doua linii câte 4 valori reprezentând configuratia finala;

Date de iesire
În fisierul magic.out va contine o singura linie pe care se va scrie numarul minim de mutari necesare pentru a transforma configuratia initiala în configuratia finala.

Precizare
Întotdeauna exista o succesiune de mutari care duce la configuratia finala.

Exemplu
magic.in magic.out Explicatie

1 2 3 4
5 6 7 8
6 1 3 4
5 2 7 8

2 Configuratia initiala este
1 2 3 4
5 6 7 8
Aplicam mutarea A:
5 1 3 4
6 2 7 8
Aplicam mutarea D:
6 1 3 4
5 2 7 8

Timp maxim de executie/test: 0.9 secunde

prof. Alin Burta
C. N."B. P. Hasdeu" Buzau
Contact:allbu2003@yahoo.com