Notice
Chào mừng bạn đến với OREOJ

[DHBB 2025 - 2026 Lớp 10 + 11] Đường đi

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
Assembly, AWK, C, C++, C++20, C++23, Go, Java, Kotlin, Pascal, Perl, PyPy, Python, Rust, Scratch, SED, Text

Cho Alice mới tạo ra một trò chơi tìm đường đi trên mặt phẳng tọa độ. Cụ thể, một nhân vật xuất phát tại vị trí ~(x_s, y_s)~ cần di chuyển tới vị trí ~(x_t, y_t)~ trong thời gian ngắn nhất. Tại mỗi đơn vị thời gian, giả sử nhân vật đang ở vị trí ~(x_1, y_1)~ thì có thể di chuyển tới vị trí ~(x_2, y_2)~ nếu ~\max(|x_1 - x_2|, |y_1 - y_2|) = 1~. Để trò chơi thêm thú vị, Alice đặt ~K~ vật phẩm ở ~K~ vị trí ~(u_1, v_1), (u_2, v_2), \dots, (u_K, v_K)~, ngoài việc di chuyển với thời gian ngắn nhất, người chơi cần chọn đường đi để thu thập được nhiều vật phẩm nhất. Nhân vật di chuyển tới vị trí có vật phẩm sẽ thu thập được vật phẩm ở vị trí đó và thời gian thu thập là không đáng kể.

Yêu cầu: Cho các thông tin ~(x_s, y_s), (x_t, y_t)~ và ~(u_1, v_1), (u_2, v_2), \dots, (u_K, v_K)~, hãy tìm đường đi từ vị trí ~(x_s, y_s)~ đến ~(x_t, y_t)~ với thời gian ngắn nhất, trong số các đường đi ngắn nhất đó, chọn con đường đi qua nhiều vị trí chứa vật phẩm nhất.

Input

Dữ liệu vào từ thiết bị vào chuẩn (bàn phím) có khuôn dạng:

  • Dòng đầu chứa năm số nguyên ~x_s, y_s, x_t, y_t, K~ (~|x_s|, |y_s|, |x_t|, |y_t| \le 10^9~; ~K \le 10^5~);
  • Dòng thứ ~i~ trong ~K~ dòng sau chứa hai số nguyên ~u_i, v_i~ (~|u_i|, |v_i| \le 10^9~). Vị trí các vật phẩm là phân biệt và khác với vị trí xuất phát cũng như vị trí đích.

Output

Kết quả ghi ra thiết bị ra chuẩn (màn hình) gồm một số nguyên không âm là số vật phẩm nhiều nhất có thể thu thập được.

Giới hạn

  • Subtask 1 (25%): ~K \le 10~
  • Subtask 2 (25%): ~K \le 20~
  • Subtask 3 (25%): ~K \le 3000~
  • Subtask 4 (25%): Không có ràng buộc nào thêm.

Ví dụ

Input 1
0 0 4 0 3
1 1
3 -1
2 0
Output 1
3

Giải thích 1: ~(0, 0) \to (1, 1) \to (2, 0) \to (3, -1) \to (4, 0)~

Input 2
0 0 4 0 4
1 1
2 2
2 0
3 -1
Output 2
3

Giải thích 2: ~(0, 0) \to (1, 1) \to (2, 0) \to (3, -1) \to (4, 0)~

Input 3
0 0 2 2 1
0 1
Output 3
0

Giải thích 3: ~(0, 0) \to (1, 1) \to (2, 2)~ ```



Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.