Uploaded by Trúc Phạm

Người đưa thư

advertisement
Người đưa thư
Task
Ngày xử ngày xưa, có N thị trấn trong vùng Middle-earth, được đánh số từ 1 tới N.
Thị trấn số 1 là thủ đô. Các thị trấn được kết nối bởi N-1 con đường 2 chiều, mỗi con
đường có độ dài di km. Giữa hai thị trấn bất kì sẽ có đường đi mà không đi qua bất kì
thị trấn nào quá 1 lần ( đồ thị của các con đường là một cây).
Khi một thị trấn bị tấn công, sẽ có một người đưa tin về thủ đô, mỗi thị trấn sẽ có một
người đưa tin. Mỗi người đưa tin sẽ có thời gian bắt đầu Si và tốc độ Vi (phút/km).
Bức thư sẽ được đưa qua đoạn đường nhanh nhất tới thủ đô. Khi một người đưa tin
đến một thị trấn, người ấy có thể tiếp tục đi đến thành phố tiếp theo hoặc giao lá thư
cho người đưa tin của thị trấn này. Ban đầu, lá thư được đưa bởi người đưa tin của thị
trấn bị tấn công.
Nhiệm vụ của bạn là, với mỗi thị trấn, tìm thời gian nhanh nhất để giao bức thư.
Input
Dòng đầu tiên: N, số thị trấn vùng Middle-earth
N-1 dòng tiếp theo: u, v, d, khoảng cách d giữa thị trấn u và v.
N-1 dòng tiếp theo: Si, Vi lần lượt là thời gian chuẩn bị và tốc độ của người đưa tin thị
trấn thứ i.
Output
Một dòng chứ N-1 số là thời gian ngắn nhất để giao thư từ thị trấn thứ i tới thủ đô.
Ràng buộc:
Constraints
•3
N
•0
Si
•1
Vi
100 000
• Tổng độ dài các con đường sẽ không vượt 10 000
Ví dụ:
Input
Output
5
206 321 542 328
1 2 20
2 3 12
241
453
26 9
1 10
500 2
2 30
Giải thích
Các con đường và độ dài được thể hiện ở hình bên trái. Thời gian chuẩn bị và tốc độ
được viết trong ngoặc.
Thời gian tối thiểu để gửi thư từ thị trấn 5 đến thủ đô có thể đạt được như sau. Người
đưa tin đi từ thị trấn 5 lấy thư và rời khỏi thị trấn sau 2 phút. Người đó đi 4 km trong
120 phút trước khi đến thị trấn 2. Ở đó, anh ấy để lại thư cho người đưa tin ở thị trấn
đó. Người đưa tin thứ hai yêu cầu 26 phút để bắt đầu hành trình và đi bộ 180 phút để
đến thủ đô.
Download