Time limit: 2.0s , Memory limit: 256M , Points: 2500 (partial)
Cho đơn đồ thị vô hướng, liên thông, không có trọng số bao gồm đỉnh, các đỉnh được đánh số từ
đến
. Các cạnh của đồ thị được xây dựng như sau:
- Có cạnh nối giữa hai đỉnh
và
của đồ thị.
- Có cạnh nối giữa hai đỉnh
và
của đồ thị với mọi
.
- Có cạnh nối giữa hai đỉnh
và
của đồ thị với mọi
.
Vì vậy, đồ thị có tổng cộng cạnh.
Thực hiện truy vấn, với mỗi truy vấn thứ
, yêu cầu tìm độ dài đường đi ngắn nhất giữa hai đỉnh
và
.
Input
- Dòng đầu tiên chứa ba số nguyên
.
- Dòng thứ hai chứa
số nguyên
.
dòng tiếp theo, dòng thứ
chứa hai số nguyên
và
.
Output
- Với mỗi truy vấn, in ra độ dài đường đi ngắn nhất giữa hai đỉnh
và
trên một dòng.
Examples
Sample Input
3 2 3
0 2
1 5
2 0
4 1
Sample Output
2
2
3
Scoring
- Subtask
điểm:
- Subtask
điểm:
- Subtask
điểm:
với mọi truy vấn
- Subtask
điểm: Không có ràng buộc gì thêm
Notes
Trong ví dụ, đồ thị được mô tả như trong hình sau:

Comments