Chọn ĐTQG ĐHSPHN 2026 - Mái che
Xem dạng PDFTrên một trục số có ~n~ đống thóc. Đống thứ ~i~ nằm tại vị trí ~x_i~ và có lượng thóc ~v_i~. 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 ~d~. 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 ~k~ mái che có cùng độ dài ~d~. 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.
Input
Dòng đầu chứa hai số nguyên ~n~ và ~q~ (~1 \le n \le 10^5~, ~1 \le q \le 20~).
Dòng thứ hai chứa ~n~ số nguyên ~x_1,x_2,\dots,x_n~ (~0 \le x_i \le 10^9~).
Dòng thứ ba chứa ~n~ số nguyên ~v_1,v_2,\dots,v_n~ (~1 \le v_i \le 10^9~).
Mỗi dòng trong ~q~ dòng tiếp theo chứa hai số nguyên ~k~ và ~d~ (~1 \le k \le n~, ~0 \le d \le 10^9~).
Output
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ủ.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~50\%~ | ~n \le 5000~ |
| 2 | ~50\%~ | Không có giới hạn gì thêm |
Sample Input 1
5 3
0 2 3 8 10
5 4 7 6 3
1 2
2 2
1 10
Sample Output 1
11
20
25
Notes
Ở truy vấn đầu, đặt mái che trên đoạn ~[1,3]~ để phủ hai đống tại vị trí ~2~ và ~3~, thu được ~4+7=11~ đơn vị thóc.
Ở truy vấn thứ hai, có thể dùng thêm mái che ~[8,10]~, nên tổng lượng thóc được phủ là ~11+6+3=20~. Ở truy vấn cuối, một mái che dài ~10~ phủ được tất cả các đống thóc.
Bình luận