Mái che
Đề bài
Mô tả
Trên một trục số có đống thóc. Đống thứ nằm tại vị trí và có lượng thóc . Nhiều đống thóc có thể cùng vị trí.
Một mái che là một đoạn đóng có độ dài . Một đống thóc nằm trên mái che, kể cả tại hai đầu mút, được xem là được phủ. Trong mỗi truy vấn, bạn được đặt đúng mái che có cùng độ dài . Nếu một đống thóc được nhiều mái che phủ thì lượng thóc của nó cũng chỉ được tính một lần.
Hãy tìm tổng lượng thóc lớn nhất có thể được phủ trong mỗi truy vấn.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- Dòng thứ hai chứa số nguyên .
- Dòng thứ ba chứa số nguyên .
- Mỗi dòng trong dòng tiếp theo chứa hai số nguyên và .
Dữ liệu ra
Với mỗi truy vấn, in ra trên một dòng tổng lượng thóc lớn nhất có thể được phủ.
Ràng buộc
- , .
- , .
- , .
Subtasks
- Subtask 1 ( số điểm): .
- Subtask 2 ( số điểm): Không có giới hạn gì thêm.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 5 3 0 2 3 8 10 5 4 7 6 3 1 2 2 2 1 10 |
11 20 25 |
Ở truy vấn đầu, đặt mái che trên đoạn để phủ hai đống tại vị trí và , thu được đơn vị thóc. Ở truy vấn thứ hai, có thể dùng thêm mái che , nên tổng lượng thóc được phủ là . Ở truy vấn cuối, một mái che dài phủ được tất cả các đống thóc. |
| 5 3 4 0 4 9 1 2 1 3 4 5 1 0 2 1 3 5 |
5 11 15 |
Ví dụ thêm (không có trong đề gốc). Với một mái che chỉ phủ một vị trí: vị trí có hai đống (), vị trí có . Với , : mái được , mái được , tổng . Với , phủ được tất cả, tổng . |
Bình luận