#P1844. 数列分段.和的最小值最大

数列分段.和的最小值最大

题目描述

对于给定的一个长度为 N 的正整数数列 a[1..N],现要将其分成 M ( M ≤ N )段,并要求每段连续,且每段和的最小值最大

关于最小值最大:例如一数列 4 2 4 5 1 要分成 3 段。

将其如下分段:[4 2] [4 5] [1]

第一段和为 6,第 2 段和为 9 ,第 3 段和为 1 ,和最小值为 1 。

将其如下分段:[4] [2 4] [5 1]

第一段和为 4 ,第 2 段和为 6 ,第 3 段和为 6 ,和最小值为 4 。

并且无论如何分段,最小值不会大于 4 。

所以可以得到要将数列 4 2 4 5 1 要分成 3 段,每段和的最小值最大为 4 。

数据范围

对于 100% 的数据,1≤ N≤ 10610^6 , M ≤ N , aia_i ≤ 2*10810^8

输入格式

第 1 行包含两个正整数 N , M 。

第 2 行包含 N 个空格隔开的非负整数 aia_i,含义如题目所述。

输出格式

一个正整数,即每段和最大值最小为多少。

样例

5 3
4 2 4 5 1
4