Trò chơi (HSG9 - Hà Nội 2025)

Xem dưới dạng PDF

Gửi bài giải

Điểm: 20
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

Tác giả:
Kiểu bài tập

Nội dung đề bài

Cho một bảng vuông kích thước N × N, N là số lẻ. Các hàng được đánh số từ 1 đến N (từ trên xuống dưới), các cột từ 1 đến N (từ trái sang phải).
Ban đầu, các số từ 1 đến N² được điền vào bảng theo thứ tự từ trái sang phải, từ trên xuống dưới (dạng như Hình 1).

1 2 3 4 5
6 7 8 9 10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
Luật chơi:

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(1PN2;1X,YN). 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 sao 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 trên chơi trước.

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.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên dương N(1N<30000) và Số Q(1Q2000);
  • Q dòng sau, mỗi dòng chứa ba số nguyên P,X,Y(1PN2;1X,YN).

Dữ liệu ra

  • Gồm Q dòng, dòng thứ i là số lần dịch bảng nhỏ nhất tìm được trong lượt chơi thứ i.

Input 1

Sao chép
5 3
17 2 5
5 4 2
18 1 1

Output 1

Sao chép
4
2
4

Nhận xét

Không có ý kiến tại thời điểm này.