‹ 上一题 下一题 ›

g5-09202. 切段留档 未做

1000 ms 256 MB 测试点 10 通过率 100% GESP-55级·二分答案方案构造阶梯·入门

题目描述

训练营把连续 天的训练量排成一张表 。要把训练表切成不超过 个连续段,每个段至少含一天,一个段的负荷为段内各天训练量之和,负荷的最大值越小方案越好。请求出负荷最大值的最小值 ,并把达成 的一种方案留档。留档规则唯一确定:从左往右扫描,能并入当前段就并入(并入后段和不超过 ),装不下就另起新段。
输出两行:第一行为 ;第二行按从左往右的顺序输出留档方案中各段的段和。按该规则还原时段数不超过 ,段和的最大值恰为 。

输入格式

第一行两个整数 。
第二行 个非负整数 。

输出格式

第一行一个整数 ,即负荷最大值的最小值。
第二行若干个整数,以空格分隔,按从左往右顺序为留档方案中各段的段和。

样例

输入
5 2
1 2 3 4 5
输出
9
6 9

样例解释

试 :从左往右装段,,并入 得 超出,第一段为 ;第二段装 ,并入 得 超出,需要第三段,共 段,超过 段,不可行。试 :第一段 和为 ,第二段 和为 ,共 段,可行。故 ;按留档规则还原出段和 与 ,最大值恰为 。

数据范围

  • ;
  • ;
  • 段和总和最大约 ,各段和与搜索上界需用 位整数。
输入
输出

            
答案