Sạc năng lượng cho Robot

View as PDF

Time limit: 1.0s , Memory limit: 256M , Points: 1

Cho một bảng ô vuông có kích thước R * C với N ô vuông đặc biệt trên bảng (N ô vuông này khác nhau). Ô vuông dòng thứ a, cột thứ b trên bảng được ký hiệu bằng (a, b).

Ban đầu, một robot được sạc năng lượng và được đặt vào một ô vuông ngẫu nhiên trên bảng. Robot di chuyển trên bảng ô vuông theo cơ chế: ở mỗi bước robot di chuyển sang ô vuông chung cạnh và tiêu tốn một đơn vị năng lượng. Sau khi được đặt trên bảng, robot xác định đường đi ngắn nhất để đến được một ô vuông đặc biệt và di chuyển theo đường đi này.

Hãy tính mức năng lượng tối thiểu cần sạc để robot luôn di chuyển được đến ô vuông đặc biệt.

Input

  • Dòng đầu tiên gồm ba số nguyên dương R, C, N cách nhau bởi khoảng trắng (R \le 100;\ C \le 2*10^9;\ N \le 2000).
  • Trong N dòng tiếp theo, mỗi dòng chứa hai số nguyên dương rc thể hiện ô (r,c) là ô đặc biệt (r \le R;\ c \le C).

Output

Gồm một số nguyên duy nhất thể hiện mức năng lượng tối thiểu cần sạc cho robot.

Samples

Sample Input 1
2 4 1
2 4
Sample Output 1
4

Scoring

  • Subtask 1 (20% số điểm): R = 1
  • Subtask 2 (20% số điểm): C \le 200
  • Subtask 3 (30% số điểm): C \le 20000
  • Subtask 4 (30% số điểm): Không có ràng buộc nào thêm

Comments