Phân chia dãy số

View as PDF

Time limit: 1.0s , Memory limit: 256M , Points: 100

Nguồn: CSES

Cho dãy số nguyên a độ dài n và một số nguyên dương k. Nhiệm vụ của bạn hãy chia dãy a thành k dãy con liên tiếp sao cho tổng lớn nhất của một dãy con đạt giá trị càng nhỏ càng tốt.

Input

  • Dòng đầu tiên chứa hai số nguyên nk (1 \le k \le n \le 2.10^5).
  • Dòng thứ hai chứa n số nguyên dãy a (0 \le a_i \le 10^9).

Output

  • In ra giá trị nhỏ nhất có thể của tổng lớn nhất của dãy con.

Samples

Sample Input 1
5 3
2 4 7 3 5
Sample Output 1
8

Clarification

Trong ví dụ, một cách chia tối ưu là [2,4], [7][3,5], tổng các dãy con tương ứng là 6, 78. Tổng lớn nhất của một dãy con là 8.

Scoring

  • Subtask 1 (10\%) số điểm: k=1
  • Subtask 2 (10\%) số điểm: k=n
  • Subtask 3 (12\%) số điểm: k=2
  • Subtask 4 (20\%) số điểm: a_i \le 1
  • Subtask 5 (22\%) số điểm: n \le 100, a_i \le 1000
  • Subtask 6 (26\%) số điểm: Không còn ràng buộc gì thêm

Comments