Vận chuyển mèo
Đề bài
Mô tả
Zxr960115 sở hữu một trang trại lớn. Anh ta nuôi con mèo dễ thương và thuê người cho ăn. Có một con đường thẳng chạy qua trang trại và ngọn đồi nằm dọc theo con đường, đánh số từ đến từ trái sang phải. Khoảng cách giữa đồi và đồi là mét. Những người cho ăn sống ở đồi .
Một hôm, các con mèo đi chơi. Con mèo thứ đi tới đồi , kết thúc chuyến đi tại thời điểm , sau đó chờ tại đồi để có người đưa về.
Những người cho ăn phải đưa tất cả các con mèo về. Mỗi người đi thẳng từ đồi đến đồi không dừng lại ở đồi nào, và trên đường đi sẽ đón tất cả các con mèo đang chờ tại mỗi đồi. Người cho ăn di chuyển với tốc độ mét trên một đơn vị thời gian và có thể đón bao nhiêu mèo cũng được.
Nếu một người cho ăn rời đồi tại thời điểm , thì tới đồi tại thời điểm (với là tổng khoảng cách từ đồi đến đồi ). Người này chỉ đón được các con mèo tại đồi đã hoàn thành chuyến đi tại thời điểm không muộn hơn . Thời gian chờ của con mèo đó là .
Nhiệm vụ của bạn là lên lịch thời điểm rời đồi cho mỗi người cho ăn (thời điểm phải là số nguyên không âm, có thể trùng nhau) sao cho tổng thời gian chờ của tất cả các con mèo là nhỏ nhất. Mọi con mèo đều phải được đưa về.
Dữ liệu vào
- Dòng đầu chứa ba số nguyên , , .
- Dòng thứ hai chứa số nguyên dương .
- Trong dòng tiếp theo, dòng thứ chứa hai số nguyên và .
Dữ liệu ra
In ra một số nguyên duy nhất — tổng thời gian chờ nhỏ nhất của tất cả các con mèo.
Ràng buộc
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 4 6 2 1 3 5 1 0 2 1 4 9 1 10 2 10 3 12 |
3 | Cho người thứ nhất rời đồi tại thời điểm : đón mèo (đợi ), mèo (đợi ), mèo (đợi ). Cho người thứ hai rời đồi tại thời điểm : đón mèo (đợi ), mèo (đợi ), mèo (đợi ). Tổng thời gian chờ = . |
| 4 6 2 1 3 5 1 0 4 1 4 9 1 1 2 6 3 12 |
14 | Phân chia tối ưu cho tổng thời gian chờ là . |
Bình luận