Bóng Chuyền
Một thành phố có ngã tư, được đánh số từ đến . Một số cặp ngã tư được nối với nhau bằng các con đường hai chiều có độ dài nguyên dương. Giữa một cặp ngã tư có thể có nhiều con đường khác nhau.
Tại ngã tư thứ có duy nhất một chiếc taxi. Người lái taxi này đồng ý chở khách (có thể đi qua nhiều ngã tư trung gian) đến một ngã tư khác bất kỳ với điều kiện tổng quãng đường di chuyển không vượt quá mét. Chi phí một chuyến đi bằng taxi tại ngã tư luôn cố định là đồng, không phụ thuộc vào quãng đường. Mỗi chiếc taxi chỉ được sử dụng nhiều nhất một lần, và khách chỉ có thể bắt taxi tại ngã tư nơi nó đứng.
Bạn đang ở ngã tư và cần đến ngã tư . Hãy tìm tổng chi phí nhỏ nhất để đi từ đến .
Dữ liệu vào
- Dòng thứ nhất chứa hai số nguyên và — số ngã tư và số con đường.
- Dòng thứ hai chứa hai số nguyên và — ngã tư xuất phát và ngã tư đích.
- dòng tiếp theo, mỗi dòng chứa ba số nguyên , , — mô tả con đường nối ngã tư và có độ dài .
- dòng cuối, dòng thứ chứa hai số nguyên và — quãng đường tối đa và chi phí của taxi tại ngã tư .
Dữ liệu ra
In ra tổng chi phí nhỏ nhất để đi từ đến . Nếu không thể đi đến được, in ra .
Ràng buộc
- ,
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 4 1 3 1 2 3 1 4 1 2 4 1 2 3 5 2 7 7 2 1 2 7 7 |
9 | Đi taxi từ ngã tư tới ngã tư (qua ngã tư , quãng đường ), chi phí . Sau đó đi taxi từ tới (quãng đường ), chi phí . Tổng chi phí là . |
| 2 1 1 2 1 2 1 1 999999998 1 999999998 |
999999998 | Taxi tại ngã tư có thể đi quãng đường vừa đủ tới ngã tư , chi phí . |
| 1 0 1 1 74 47 |
0 | Đã ở đúng ngã tư đích, không cần đi taxi. |
Bình luận