[CSES 1085] Array Division

Xem dạng PDF

Gửi bài giải


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

Dạng bài
Ngôn ngữ cho phép
C++, Pascal, PyPy, Python

Cho một mảng gồm ~n~ số nguyên dương.

Nhiệm vụ của bạn là chia mảng thành ~k~ mảng con sao cho tổng lớn nhất trong một mảng con là nhỏ nhất có thể.

Dữ liệu vào

Dòng đầu tiên chứa hai số nguyên ~n~ và ~k~: kích thước của mảng và số lượng mảng con trong cách chia.

Dòng tiếp theo chứa ~n~ số nguyên ~x\_1,x\_2,\ldots,x\_n~: nội dung của mảng.

Kết quả

In ra một số nguyên: tổng lớn nhất trong một mảng con trong cách chia tối ưu.

Giới hạn

  • ~1 \le n \le 2 \cdot 10^5~
  • ~1 \le k \le n~
  • ~1 \le x\_i \le 10^9~

Ví dụ

Dữ liệu vào:

5 3
2 4 7 3 5

Kết quả:

8

Giải thích: Một cách chia tối ưu là ~[2,4],[7],[3,5]~ với tổng các mảng con lần lượt là ~6,7,8~. Tổng lớn nhất là tổng cuối cùng ~8~.


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.