#288. Mã đi tuần (KNIGHT)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Viết một chương trình tính toán số bước đi ít nhất mà một quân Mã cần thực hiện để đi từ một ô trên bàn cờ đến một ô khác. Các vị trí mà quân Mã có thể đi được trong một bước được mô tả như luật cờ vua thông thường (hình chữ L).

Dữ liệu:

  • Dòng đầu tiên cho biết số lượng bộ dữ liệu (số lượng quân Mã) n .
  • Trong 3n dòng tiếp theo, mỗi 3 dòng mô tả một trường hợp:
    • Dòng thứ nhất là một số nguyên L biểu thị kích thước bàn cờ ( L \times L ).
    • Dòng thứ hai và thứ ba lần lượt chứa một cặp số nguyên (x, y) , biểu thị tọa độ điểm bắt đầu và điểm kết thúc của quân Mã. Giả sử đối với mỗi quân Mã, điểm bắt đầu và kết thúc đều hợp lệ.

Kết quả:

  • Đối với mỗi trường hợp, xuất ra một dòng chứa một số nguyên biểu thị số bước di chuyển ít nhất. Nếu điểm bắt đầu và kết thúc trùng nhau, xuất ra 0 .

Ví dụ:

Dữ liệu:

3
8
0 0
7 0
100
0 0
30 50
10
1 1
1 1

Kết quả:

5
28
0

Giới hạn: 4 \le L \le 300 , đảm bảo 0 \le x, y \le L-1 .