#1725. 跑步计划

跑步计划

题目描述:

X为了提升体能,制定了严格的晨间跑步计划。每个周一早晨,他会预留固定的N分钟用于运动,每分钟都面临一个选择:要么跑步,要么休息,但这两个选择受到严格的规则限制,最终目标是在满足所有规则的前提下,跑出尽可能远的距离。具体规则如下: 跑步规则:如果在第i分钟选择跑步,他能跑出A_i米,(A_i为该分钟的跑步能力值),同时身体的 “疲倦程度” 会增加 1(初始疲倦程度为 0)。 休息规则:如果在第i分钟选择休息,疲倦程度会减少 1;但有两个关键限制:任何时刻,疲倦程度都不能超过上限M(避免过度疲劳);一旦开始休息,必须等到疲倦程度降至 0 后,才能重新开始跑步(确保身体充分恢复)。 结束要求:在N分钟的运动时间结束时,疲倦程度必须恰好为 0(不能带着疲劳结束运动)。 现在需要根据给定的N(总时间)、M(疲倦上限)和每分钟的跑步能力值A_i,计算 X在满足所有规则的情况下,最多能跑的总距离。

输入格式:

第一行:两个整数N和M,分别表示总运动时间(分钟)和疲倦程度的上限; 接下来N行:每行一个整数A_i(1<=i <=N),表示第i分钟跑步时能跑出的距离。

输出格式:

输出一行,一个整数,即 X最多能跑的总距离。

样例:

5 2
5
3
4
2
10

9

提示

整个过程中疲倦程度最高为 1(第 1、3 分钟),未超过上限 2,符合规则; 第 2 分钟休息到疲倦 0,第 3 分钟才能重跑;第 4 分钟休息到疲倦 0,第 5 分钟若想跑需满足 “结束时疲倦为 0”—— 但第 5 分钟跑步会让疲倦变为 1,结束时无法归 0,因此第 5 分钟必须休息,符合 “休息到 0 才能重跑” 的隐含约束(若第 5 分钟不休息,无法满足结束条件);综上,最优累计距离为 5(第 1 分钟)+4(第 3 分钟)=9 米。

【数据范围】

保证对于所有数据满足:N<=2000,M<=500,Ai<=1000。