SHAOXIAOJ正在加载中...

2297: 小龙哥哥打游戏

金币值:15 定数:14 时间限制:1.000 s 内存限制:128 M
正确:1 提交:1 正确率:100.00% 命题人:
点赞量:0 收藏量:0 题目类型:程序 知识点: 24-1024

题目描述

       小龙哥哥正沉浸于一款充满挑战的游戏中,他的目标是击败最终的魔王。但在通往魔王的道路上,他必须先克服 $N$ 波小怪的阻碍。
       根据这款游戏的独特规则,每波小怪都拥有一个特定的跳跃值 $h_i$ 。小龙哥哥可以在阶梯之间灵活跳跃,具体来说,他可以从阶梯i跳到阶梯 $i+1$、$i+2$,一直到阶梯 $i+K$ 中的任意一个。
       然而,跳跃并非毫无代价。当他从第i波小怪跳到第 $j$ 波小怪时(其中 $j$ 在 $[i+1, i+K]$ 的范围内),他会消耗 $|h_i - h_j|$ 的体力。为了在与魔王的决战中保持最佳状态,小龙哥哥希望能够尽可能地节省体力,减少不必要的消耗。
       因此,你的任务是帮助小龙哥哥计算出,从第一波小怪跳到第 $N$ 波小怪,他最少需要消耗多少体力。这将是他制定策略、保存实力、最终击败魔王的关键所在。

输入格式

第一行为 $N$($2 \le N \le 10^5$),$K$($1 \le K \le 100$),见题意.
第二行 $N$ 个整数 $[h1,h2,h3...hn]$($1 \le hi \le 10^4$),代表每波小怪的跳跃值.

输出格式

输出最少需要消耗多少体力。

输入样例    复制

5 3
10 30 40 50 20

输出样例    复制

30

提示

对于样例的解释: $1$ -> $2$ -> $5$,消耗 $|10 - 30|$ + $|30 - 20|$ = $30$ 体力