Shaxmat taxtasida figura turi fig (1 — Rook (ladya), 2 — Bishop (fil), 3 — Queen (farzin), 4 — Knight (ot)) va ikkita katak (x1, y1) hamda (x2, y2) berilgan (1–8). Taxtada boshqa figuralar yo'q deb hisoblab, figura bir yurishda birinchi katakdan ikkinchisiga o'ta olsa true, aks holda false qaytaring. Katak o'zgarmasa ((x1,y1) = (x2,y2)) yurish yo'q — false.
func chessMove(fig int, x1 int, y1 int, x2 int, y2 int) bool {
// ...
}
Input: fig=1, x1=1, y1=1, x2=1, y2=5
Output: true
Input: fig=2, x1=1, y1=1, x2=4, y2=4
Output: true
Input: fig=4, x1=1, y1=1, x2=2, y2=3
Output: true
dx = |x2 - x1|, dy = |y2 - y1|.dx == 0 yoki dy == 0. Fil: dx == dy. Farzin — ladya yoki fil yurishi. Ot: (dx, dy) — (1, 2) yoki (2, 1).