Thu hoạch nấm

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C++, Python
Thu hoạch nấm
Mô tả và yêu cầu

Đang là giữa mùa đông và việc đi ra khỏi nhà là việc vô cùng khó khăn với Bờm. Ngày mai,
bạn ấy được giao việc đi thu hoạch nấm trên khu đất nhà mình.
Có thể coi khu đất có nấm mà Bờm phải thu hoạch là một đoạn thẳng trên trục số. Có 𝑛 vị
trí có nấm, vị trí thứ 𝑖 ở điểm 𝑥𝑖 và có 𝑐𝑖 cây nấm. Vì trời rất lạnh nên Bờm muốn chọn 1 điểm
xuất phát để từ đó thu hoạch nấm những điểm có khoảng cách không quá 𝑘 so với vị trí mà
Bờm chọn sao cho tổng số nấm thu được là nhiều nhất có thể.
Yêu cầu: Hãy giúp Bờm tính xem tổng số nấm lớn nhất mà Bờm có thể thu hoạch được
trong khoảng cách không quá 𝑘 tính từ vị trí xuất phát mà Bờm đã chọn từ trước.
Dữ liệu:
+ Dòng đầu là số 𝑛 (𝑛 ≤ 106) và số 𝑘 (𝑘 ≤ 2.106): số vị trí có nấm.
+ 𝑛 dòng tiếp theo, mỗi dòng gồm 2 số 𝑐𝑖 và 𝑥𝑖 (𝑐𝑖 ≤ 104, 𝑥𝑖 ≤ 106): có 𝑐𝑖 cây nấm ở điểm
𝑥𝑖.
Kết quả: ghi ra một số nguyên duy nhất là tổng số nấm lớn nhất mà Bờm có thể thu hoạch
được

Ví dụ
LAZY.INP      LAZY.OUT
                   4 3           11           Giải thích
                   4 7                        Bờm nên xuất phát từ vị trí 4
                   10 15                      để có thể thu hoạch được nấm
                   2 2                        ở vị trí 1, 2 và 7.
                   5 1                        Tổng số nấm là: 5 + 2 + 4 = 11

   Chú ý: ít nhất 40% số điểm ứng với các test có 𝑛         ≤  5000

Tải PDF gốc


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.