#DMY25S1703. 栅栏
栅栏
栅栏
文件与限制
输入文件:fence.in;输出文件:fence.out。
时间限制:1 秒;空间限制:128 MiB。使用 C++14 O2。
题目描述
栅栏由 块宽度为 的木板组成,第 块的高度为 。
小 L 有一个宽度为 的滚筒,希望先用滚筒刷尽可能多的油漆,剩余部分再用刷子涂。他不希望滚筒一部分接触栅栏、另一部分不接触。
因此,每次操作选择一段恰好包含 块连续木板的区间,从底部向上涂色,直到这 块木板中的最小高度。一个地方可以被重复涂色,面积只计算一次。
请输出最多能用滚筒涂色的面积,以及在达到这个最大面积的前提下,最少需要的操作次数。
输入格式
第一行两个整数 。第二行 个整数 。
输出格式
输出两行,每行一个整数:第一行为最大面积,第二行为最少操作次数。
样例 1
5 2
1 2 4 2 3
9
3
分别选择 、、,即可使各木板的涂色高度达到 。
样例 2
见附加文件 samples.zip 中的 ex_fence2.in/out。
数据范围
对于全部数据,,,。
| 测试点 | 额外限制 |
|---|---|
| 1~4 | |
| 5~10 | |
| 11~15 | |
| 16~20 | 无 |