Cho đồ thị vô hướng liên thông gồm đỉnh và cạnh. Cạnh thứ nối đỉnh với đỉnh có độ dài . Cho truy vấn thuộc một trong hai loại:
- : In độ dài đường đi ngắn nhất từ đỉnh đến đỉnh ;
- : In đỉnh thứ trên đường đi ngắn nhất từ đến .
Yêu cầu: Với mỗi truy vấn, tìm kết quả tương ứng.
Dữ liệu vào:
- Dòng đầu chứa hai số ;
- dòng sau, dòng thứ chứa ba số nguyên ;
- dòng cuối, mỗi dòng chứa thông tin một truy vấn thuộc một trong hai loại ở trên.
Dữ liệu đảm bảo truy vấn loại tồn tại đáp số.
Dữ liệu ra:
- Tương ứng với mỗi truy vấn, ghi kết quả tìm được trên một hàng.
Ví dụ:
Dữ liệu vào:
6 2
1 2 1
2 4 1
2 5 2
1 3 1
3 6 2
1 4 6
2 4 6 4
Dữ liệu ra:
Giới hạn:
- Subtask tổng số điểm có ;
- Subtask tổng số điểm tiếp theo có và tất cả các truy vấn là loại ;
- Subtask tổng số điểm còn lại không có ràng buộc gì thêm.