Điều hướng chính

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập buocnhaythudiem

Bước nhảy thu điểm

Dễ Quy hoạch độngMonotonic Queue

  • 100 Điểm
  • 1.0s Thời gian
  • 500M Bộ nhớ
  • 50% Tỉ lệ AC
  • 1 Số AC

Trên một dải gồm \(N\) ô xếp thành hàng, ô thứ \(i\) (\(1 \le i \le N\)) chứa một số nguyên \(a_i\) (có thể âm). Quân cờ ban đầu nằm ở ô số \(0\) (ô xuất phát, không chứa giá trị) và tổng điểm bằng \(0\).

Mỗi lượt đi, quân cờ tiến sang phải ít nhất \(1\) và nhiều nhất \(K\) ô. Mỗi khi hạ cánh xuống ô \(i\), giá trị \(a_i\) được cộng vào tổng điểm (các ô bị nhảy qua không được tính). Người chơi có thể dừng lại tại bất kỳ thời điểm nào, kể cả khi chưa đi lượt nào (khi đó điểm là \(0\)), nhưng không được đi ra ngoài ô \(N\).

Hãy tính tổng điểm lớn nhất có thể đạt được.

Input

  • Dòng đầu chứa hai số nguyên \(N\) và \(K\).
  • Dòng thứ hai chứa \(N\) số nguyên \(a_1, \dots, a_N\).

Output

  • In ra một số nguyên: tổng điểm lớn nhất.

Constraints

  • \(1 \le N \le 10^5\)
  • \(1 \le K \le 100\)
  • \(-10^9 \le a_i \le 10^9\)

Sample Input

7 3
-4 2 -7 -5 -6 8 -1

Sample Output

5

Explanation

Đi theo các ô \(2 \to 4 \to 6\) (mỗi lượt bước không quá \(3\) ô) thu được \(2 + (-5) + 8 = 5\). Sau đó dừng lại. Không có cách nào tốt hơn.

Bình luận

Chưa có bình luận nào.