A7560. [ABC145F] Laminate
编程题
普及+/提高
知识点
题目描述
你有一个 $10^9$ 行 $N$ 列的白色网格,你要通过将部分格子涂黑来制作一幅艺术品。
目前,对于从左到右的第 $i$ 列,计划从底部开始的 $H_i$ 个格子涂黑,其余格子保持白色。
在开始制作艺术品之前,你可以选择至多 $K$ 列(也可以不选),并将这些列的 $H_i$ 的值更改为你喜欢的 $0$ 到 $10^9$ 之间的任意整数。
每一列的更改值可以单独选择。
之后,你需要通过重复以下操作来完成更改后的艺术品:
- 选择某一行上连续的 $1$ 个或多个格子,将它们涂黑。(已经涂黑的格子可以再次涂黑,但不能涂黑本应保持白色的格子。)
请你求出,完成艺术品所需的最少操作次数。
目前,对于从左到右的第 $i$ 列,计划从底部开始的 $H_i$ 个格子涂黑,其余格子保持白色。
在开始制作艺术品之前,你可以选择至多 $K$ 列(也可以不选),并将这些列的 $H_i$ 的值更改为你喜欢的 $0$ 到 $10^9$ 之间的任意整数。
每一列的更改值可以单独选择。
之后,你需要通过重复以下操作来完成更改后的艺术品:
- 选择某一行上连续的 $1$ 个或多个格子,将它们涂黑。(已经涂黑的格子可以再次涂黑,但不能涂黑本应保持白色的格子。)
请你求出,完成艺术品所需的最少操作次数。
输入格式
输入通过标准输入给出,格式如下:
> $N$ $K$ $H_1$ $H_2$ $\ldots$ $H_N$
> $N$ $K$ $H_1$ $H_2$ $\ldots$ $H_N$
输出格式
输出完成艺术品所需的最小操作次数。
输入输出样例
输入 #1
4 1 2 3 4 1
输出 #1
3
输入 #2
6 2 8 6 9 1 2 1
输出 #2
7
输入 #3
10 0 1 1000000000 1 1000000000 1 1000000000 1 1000000000 1 1000000000
输出 #3
4999999996
说明/提示
## 限制条件
- $1 \leq N \leq 300$
- $0 \leq K \leq N$
- $1 \leq H_i \leq 10^9$
- 所有输入均为整数。
## 样例解释 1
例如,将 $H_3$ 的值更改为 $2$ 后,可以通过以下操作在 $3$ 次内完成艺术品的制作:
- 从底部第 $1$ 行,将第 $1$ 列到第 $4$ 列的格子涂黑。
- 从底部第 $2$ 行,将第 $1$ 列到第 $3$ 列的格子涂黑。
- 从底部第 $3$ 行,将第 $2$ 列的格子涂黑。
- $1 \leq N \leq 300$
- $0 \leq K \leq N$
- $1 \leq H_i \leq 10^9$
- 所有输入均为整数。
## 样例解释 1
例如,将 $H_3$ 的值更改为 $2$ 后,可以通过以下操作在 $3$ 次内完成艺术品的制作:
- 从底部第 $1$ 行,将第 $1$ 列到第 $4$ 列的格子涂黑。
- 从底部第 $2$ 行,将第 $1$ 列到第 $3$ 列的格子涂黑。
- 从底部第 $3$ 行,将第 $2$ 列的格子涂黑。