Nguồn: Đề thi Olympic 30/4 năm 2016
Trong luật cờ vua, mỗi nước đi của quân mã được quy định như sau: quân mã đang ở vị trí \(X\) như hình vẽ bên dưới có thể di chuyển đến một trong các ô mà mũi tên chỉ đến (theo đường chéo của hình chữ nhật \(2 \times 3\))
Yêu cầu: Cho trước bàn cờ kích thước \(n \times m\) ô. Hãy đếm số nước đi ít nhất để quân mã di chuyển từ ô có tọa độ \((x_{1},\ y_{1})\) đến ô có tọa độ \((x_{2},\ y_{2})\). Trong trường hợp không đến được thì xuất giá trị \(- 1\).
Dữ liệu vào:
+ Dòng 1 ghi 2 số nguyên dương \(n,\ m\ (2 \leq n,\ m\ \leq 1000)\).
+ Dòng 2 ghi 2 số nguyên \(x_{1},\ y_{1}\ (1 \leq x_{1} \leq n;\ 1 \leq y_{1} \leq m)\)
+ Dòng 3 ghi 2 số nguyên \(x_{2},\ y_{2}\ (1 \leq x_{2}\ \leq n;\ 1 \leq y_{2} \leq m)\)
Các số trên cùng một dòng cách nhau ít nhất một ký tự trắng.
Kết quả: Ghi một số nguyên duy nhất cho biết số nước đi ít nhất để quân mã di chuyển từ ô \((x_{1},\ y_{1})\) đến ô \((x_{2},\ y_{2})\). Nếu không đến được thì ghi số \(- 1\).
Ví dụ:
Input | Output |
---|---|
4 6 1 1 2 4 | 2 |
Code tích cực |
---|
Trong 24h |
|
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38877 |