Kế hoạch thi đấu
Xem dạng PDFTiến Minh là một vận động viên cầu lông chuyên nghiệp. Trong một hệ thống thi đấu giải cầu lông hàng năm, người ta tổ chức ~n~ giải đấu đánh số từ 1 đến ~n~. Giải đấu thứ i được tổ chức vào ngày thứ ~a_i~ (ngày ban tổ chức ra quyết định là ngày thứ 1) và mỗi vận động viên tham gia được cộng điểm thưởng là ~b_i~. Tiến Minh có thể tham ra các tất cả giải đấu trong hệ thống, tuy nhiên để đảm bảo sức khỏe cho Tiến Minh, huấn luyện viên quyết định hai giải đấu mà Tiến Minh chọn tham dự phải cách xa nhau ít nhất là ~k~ ngày hay nói cách khác nếu Minh tham dự cả giải thứ ~i~ và giải thứ ~j~ thì phải thỏa mãn điều kiện |~a_i-a_j | ≥ k~.
Yêu cầu: Bạn hãy giúp Tiến Minh chọn lựa các giải thi đấu sao cho tổng số điểm thưởng là nhiều nhất.
Dữ liệu vào:
Dòng đầu tiên là hai số nguyên dương ~n~ và ~k~ cách nhau một dấu trống (~1≤n≤ 10^5, 1≤k≤100~)
Dòng thứ hai chứa n số nguyên ~a_1,a_2,...,a_n~ (~1 ≤ a_i ≤ 10^9~) là ngày thi đấu của các giải 1, 2,...,~n~; mỗi số cách nhau một dấu trống. Dữ liệu cho đảm bảo ~a_1<a_2<a_3< ...< a_n~</p>
Dòng thứ ba chứa n số nguyên ~b_1,b_2,...,b_n~ (~1 ≤ b_i ≤ 10^4~) là số điểm thưởng của các giải 1, 2, ..., ~n~; mỗi số cách nhau một dấu trống.
Dữ liệu ra:
- Ghi một số nguyên duy nhất là tổng số điểm thưởng lớn nhất mà Tiến Minh có thể có được.
Ví dụ:
Input
5 2
1 2 3 4 5
1 5 1 5 1
Output
10
Ràng buộc:
- Subtask1: Có 30% test ~n≤10^5~ và ~b_1< b_2< ...< b_n~
- Subtask1: Có 40% test có ~n≤5000~.
- Subtask3 :Có 30% test có ~5000<n≤10^5~</li>
Bình luận