HSG9 Hà Nội 2025 - Trò chơi
Xem dạng PDF
Cho một bảng vuông kích thước ~N \times N, N~ là số lẻ. Các hàng của bảng được đánh số từ 1 tới ~N~, từ trên xuống dưới; các cột của bảng được đánh số từ 1 tới ~N~, từ trái sang phải. Ban đầu, các số từ 1 đến ~N^2~ được ghi vào bảng này lần lượt từ trái sang phải, từ trên xuống dưới. Khi ~N = 5~ thì bảng vuông sẽ có dạng như Hình 1.
Luật chơi: Có ~Q~ lượt chơi, mỗi lượt chơi quản trò sẽ cấp cho người chơi thông tin là ba số nguyên ~P, X, Y~ (~1 \le P \le N^2; 1 \le X, Y \le N~). Người chơi cần đưa số nguyên ~P~ đến vị trí hàng ~X~ cột ~Y~ với số lần dịch bảng nhỏ nhất bằng cách sau:
- Dịch các số trên hàng chứa số ~P~ sang phải hoặc sang trái một ô theo vòng tròn cho đến khi số ~P~ nằm trên cột ~Y~;
- Dịch các số trên cột ~Y~ lên trên hoặc xuống dưới một ô theo vòng tròn cho đến khi số ~P~ nằm trên hàng ~X~;
- Mỗi thao tác dịch hàng hoặc cột như trên được tính là một lần dịch bảng. Bảng đầu tiên của lượt chơi sau chính là bảng kết thúc của lượt chơi trước.
Ví dụ: Xét bảng vuông ~5 \times 5~, cần dịch số 17 trên bảng ban đầu đến vị trí hàng 2 cột 5. Để số lần dịch bảng nhỏ nhất thực hiện như sau:
- Bước 1: Dịch hàng 4 sang phải 3 ô (hoặc sang trái 2 ô). Ở đây dịch sang trái 2 ô để số 17 nằm ở cột 5.
- Bước 2: Dịch cột 5 lên trên 2 ô (hoặc xuống dưới 3 ô). Ở đây dịch lên trên 2 ô để số 17 nằm ở hàng 2. Tổng cộng 4 lần dịch bảng.
Yêu cầu: Cho thông tin của ~Q~ lượt chơi. Hãy lập trình đưa ra số lần dịch bảng nhỏ nhất tìm được tương ứng với mỗi lượt chơi.
Input
- Dòng đầu tiên chứa hai số nguyên dương ~N, Q~ (~1 \le N < 30000; 1 \le Q \le 2000~);
- ~Q~ dòng sau, mỗi dòng chứa ba số nguyên dương ~P, X, Y~ (~1 \le P \le N^2; 1 \le X, Y \le N~) mô tả thông tin của một lượt chơi.
Output
Gồm ~Q~ dòng, dòng thứ ~i~ tương ứng là số lần dịch bảng nhỏ nhất tìm được trong lượt chơi thứ ~i~.
Sample Input 1
5 3
17 2 5
5 4 2
18 1 1
Sample Output 1
4
2
4
Ràng buộc
- Có 40% số test ứng với 40% số điểm của bài thỏa mãn: ~N < 100; Q \le 100~;
- 40% số test khác ứng với 40% số điểm của bài thỏa mãn: ~N < 1500; Q \le 1500~;
- 20% số test còn lại ứng với 20% số điểm của bài không có ràng buộc gì thêm.
Bình luận