NézetNyomtat

Sakk (Megoldás)
Címkék > Feladat
Elmélet > Algoritmusok > Gráfalgoritmusok

Sakk

Egy sakktáblára elhelyezünk egy huszárt. A sakktábla $8\times 8$-as négyzet. A huszár "lóugrásban" lép, azaz vagy vízszintes irányban lép egyet és függőlegesen kettőt, vagy pedig fordítva.

Feladat

Készíts programot (SAKK.PAS, ...), amely egy adott pozícióra elhelyezett huszár esetén megadja, hogy a huszár mely pozíciókra minimum hány lépésben juthat el!

Bemenet

A SAKK.BE szöveges állomány egyetlen sorában a huszár sorindexe $(1\leq N\leq 8)$ és oszlopindexe $(1\leq M\leq 8)$ van, egy szóközzel elválasztva.

Kimenet

A SAKK.KI szöveges állományba 8 sort kell írni, mindegyikben 8 szám legyen egy-egy szóközzel elválasztva! Az $i$-edik sor $j$-edik oszlopában az a lépésszám legyen, ahány lépésben az adott mező elérhető a kiinduló mezőről!

Példa

SAKK.BESAKK.KI
3 2
1 2 1 4 3 2 3 4
2 3 2 1 2 3 4 3
3 0 3 2 3 2 3 4
2 3 2 1 2 3 4 3
1 2 1 4 3 2 3 4
2 3 2 3 2 3 4 3
3 2 3 2 3 4 3 4
4 3 4 3 4 3 4 5

Tesztadatok