装箱问题
1.1题目描述
有一个长度为n的序列,你需要把它分成m 段,使得所有子段和中最大的最小。请输出这个最小值。
1.2输人描述
输入包含两行。
第一行给出正整数n, m,其中n ≤ 10R, m ≤ n。
第二行给出n个非负整数a;(ai≤ 109),表示序列的第i个数。
1.3输出描述
输出一行,表示答案。
Hint:可以书写check(lim)函数判断如果让所有子段和都不超过lim是否能实现,再尝试观察check()函数的单调性。
1.4样例展示
样例输入1
9 3
1 2 3 4 5 6 7 8 9
样例输出1
17
1.5时空限制
时间:1 s
空间: 256 MB
样例解释:分成三段[1,2,3,4,5],[6,7],[8,9]