Qua đường đèn giao thông
Đề bài
Mô tả
Một con đường được biểu diễn bằng đoạn thẳng . Một người đứng ở điểm và muốn đến điểm trong thời gian ngắn nhất.
Trên đường có hòn đảo an toàn đặt tại các toạ độ nguyên phân biệt (trong đó chắc chắn có và ). Đèn giao thông hoạt động tuần hoàn: đầu tiên xanh trong giây, rồi đỏ trong giây, rồi lại xanh giây, và cứ thế tiếp diễn. Người này bắt đầu di chuyển đúng vào lúc đèn vừa chuyển sang xanh.
Các quy tắc di chuyển:
- Trong lúc đèn xanh, mỗi giây người này bắt buộc phải di chuyển đúng đơn vị, sang trái () hoặc sang phải (), và luôn phải nằm trong đoạn . Không được đứng yên khi đèn xanh.
- Chỉ được đổi hướng khi đang đứng trên một hòn đảo an toàn. Nghĩa là: nếu giây trước vừa đi thì giây này chỉ được đi , trừ khi đang ở trên một hòn đảo (khi đó được chọn hoặc ). Tương tự cho trường hợp vừa đi .
- Đúng vào lúc đèn chuyển sang đỏ, người này bắt buộc phải đang đứng trên một hòn đảo an toàn (và chờ hết giây đỏ tại đó). Nếu tại thời điểm đèn đỏ mà không ở trên đảo thì lộ trình không hợp lệ.
Người này coi như đã qua đường ngay khi toạ độ của mình bằng (nếu chạm giữa chừng thì dừng luôn, không cần chờ hết đèn).
Hãy tìm thời gian nhỏ nhất để qua đường tuân theo mọi quy tắc trên, hoặc cho biết điều đó là không thể.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa số nguyên phân biệt , là toạ độ các hòn đảo an toàn. Chắc chắn có và trong số đó.
- Dòng thứ ba chứa hai số nguyên và : thời gian đèn xanh và thời gian đèn đỏ.
Dữ liệu ra
In ra một số nguyên duy nhất là thời gian nhỏ nhất để qua đường, hoặc nếu không thể.
Ràng buộc
- , các phân biệt, có cả và .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 15 5 0 3 7 14 15 11 11 |
45 | Đèn xanh đầu tiên: đi tới rồi quay về (đổi hướng tại đảo ), kết thúc tại đảo đúng lúc đèn đỏ, chờ giây. Đèn xanh thứ hai: từ đi tới , lại chờ đỏ. Cuối cùng đi giây tới . Tổng . |
| 13 4 0 3 7 13 9 9 |
-1 | Không có lộ trình nào cho phép luôn đứng trên đảo mỗi khi đèn đỏ, nên không thể qua đường. |
Bình luận