Tàu điện ngầm
Đề bài
Mô tả
Pira là một thành phố nổi tiếng với hệ thống tàu điện ngầm lâu đời và phức tạp. Thành phố có ga tàu, được đánh số từ đến và tuyến đường có số hiệu từ đến . Tuyến đường có số hiệu được biểu diễn bởi cặp có thứ tự gồm hai chỉ số của hai nhà ga cho biết tuyến đường này cho phép đi từ ga đến ga . Khi đó ta nói tuyến đường số hiệu là đi khỏi ga và đi đến ga . Thời gian cần thiết để mỗi chuyến tàu đi theo tuyến đường số hiệu từ ga đến ga là đơn vị thời gian.
Mỗi ga có các bến tàu đến tương ứng với mỗi tuyến đường đi đến nó và các bến tàu đi tương ứng với mỗi tuyến đường đi khỏi nó. Khi xây dựng hệ thống này, lãnh đạo thành phố đã nhờ các nhà khoa học tính toán và sắp xếp các vị trí đặt các bến tàu đến và các bến tàu đi trong mỗi ga sao cho hành khách dễ dàng di chuyển và tính được thời gian di chuyển theo cách lựa chọn của mình. Các nhà khoa học đã sắp xếp vị trí các bến tàu đến và đi ở mỗi ga sao cho thời gian di chuyển từ bến tàu đến của tuyến đường số hiệu đến bến tàu đi của tuyến đường số hiệu được tính bởi hàm , trong đó là một thông số mà các nhà khoa học đưa vào để hàm có thể thay đổi linh hoạt tuỳ thời điểm. Nói một cách đơn giản, nếu trên đường di chuyển hành khách theo tuyến đường đi đến một ga nào đó và theo tuyến đường đi khỏi ga này thì sẽ mất đơn vị thời gian để thực hiện việc chuyển tuyến đường. Do đó ta gọi là hàm chi phí thời gian chuyển tuyến để chuyển từ tuyến đường sang tuyến đường .
Dựa vào thông tin về thời gian di chuyển trên các tuyến đường và hàm chi phí thời gian chuyển tuyến , hành khách có thể tính được thời gian di chuyển từ một ga đến bất kỳ ga nào còn lại trong hệ thống là bằng tổng thời gian di chuyển trên các tuyến đường giữa các ga và thời gian chuyển tuyến ở mỗi ga trung gian.
Yêu cầu: Cho biết vị trí hai ga và trong hệ thống, hãy tính thời gian ít nhất để di chuyển từ ga đến ga .
Dữ liệu vào
- Dòng thứ nhất ghi các số nguyên dương , , , và số nguyên không âm , trong đó là thông số xác định hàm chi phí chuyển tuyến;
- Dòng thứ trong số dòng tiếp theo chứa ba số nguyên dương , và mô tả thông tin về tuyến đường số hiệu cho biết tuyến đường này cho phép di chuyển từ ga đến ga và là thời gian di chuyển qua nó, .
Dữ liệu đảm bảo có không quá một tuyến đường đi từ ga đến ga với mọi và và không có tuyến đường nào nối một ga với chính nó. Các số trên cùng dòng được ghi cách nhau bởi dấu cách.
Dữ liệu ra
In ra một số nguyên là thời gian di chuyển tìm được. Nếu không có cách di chuyển thì ghi ra .
Ràng buộc
- ;
- ;
- .
Subtasks
- Subtask 1 ( số test, số điểm): , , ;
- Subtask 2 ( số test, số điểm): , , ;
- Subtask 3 ( số test, số điểm): , , .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 8 1 5 1 1 2 12 1 3 13 1 4 14 4 2 14 2 3 12 2 5 12 4 5 15 3 5 16 |
31 | Hành khách đi từ ga đến ga theo tuyến đường số hiệu mất đơn vị thời gian, chuyển từ bến tàu đến của tuyến đường số hiệu sang bến tàu đi của tuyến đường số hiệu ở ga mất đơn vị thời gian và đi từ ga đến ga mất đơn vị thời gian. Tổng cộng: . |
| 5 8 1 5 0 1 2 12 1 3 13 1 4 14 4 2 14 2 3 12 2 5 12 4 5 15 3 5 16 |
30 | Vẫn với ví dụ trên nhưng (có trong ghi chú của đề gốc): cách đi với thời gian ít nhất từ ga đến ga là . |
Bình luận