2689 问题 G: 蓝桥杯2022年第十三届省赛真题-最优清零方案

时间限制: s 内存限制: MB 提交: 1325 解决: 157
题目描述

给定一个长度为 N 的数列 A1, A2, · · · , AN。现在小蓝想通过若干次操作将这个数列中每个数字清零。

每次操作小蓝可以选择以下两种之一:

1. 选择一个大于 0 的整数,将它减去 1;

2. 选择连续 K 个大于 0 的整数,将它们各减去 1。

小蓝最少经过几次操作可以将整个数列清零?

输入

输入第一行包含两个整数 N 和 K。

第二行包含 N 个整数 A1, A2, · · · , AN

输出

输出一个整数表示答案。

样例输入
4 2
1 2 3 4
样例输出
6
提示

对于 20% 的评测用例,1 ≤ K ≤ N ≤ 10。

对于 40% 的评测用例,1 ≤ K ≤ N ≤ 100。

对于 50% 的评测用例,1 ≤ K ≤ N ≤ 1000。

对于 60% 的评测用例,1 ≤ K ≤ N ≤ 10000。

对于 70% 的评测用例,1 ≤ K ≤ N ≤ 100000。

对于所有评测用例,1 ≤ K ≤ N ≤ 1000000, 0 ≤ Ai ≤ 1000000。 

比赛公告

第十三届蓝桥杯大赛软件赛省赛 Java 大学 A 组
C题

求和

D题

GCD

E题

蜂巢

F题

全排列的价值

G题

青蛙过河

H题

因数平方和

I题

最优清零方案

J题

推导部分和


注意事项:

1. 不要使用 package 语句。

2. 选手代码的主类名必须为:Main,否则会被判为无效代码。

3. 如果程序中引用了类库,在提交时必须将 import 语句与程序的其他部分同时提交。

4. 只允许使用 Java 自带的类库。

5. 提交时,注意选择使用Java语言。


比赛结束,也可以提交,见题集2022年第十三届蓝桥杯大赛软件类省赛Java大学A组真题