atcoder#DPB. Frog 2

Frog 2

配点 : 100100

問題文

NN 個の足場があります。 足場には 1,2,,N1, 2, \ldots, N と番号が振られています。 各 ii (1iN1 \leq i \leq N) について、足場 ii の高さは hih_i です。

最初、足場 11 にカエルがいます。 カエルは次の行動を何回か繰り返し、足場 NN まで辿り着こうとしています。

  • 足場 ii にいるとき、足場 i+1,i+2,,i+Ki + 1, i + 2, \ldots, i + K のどれかへジャンプする。 このとき、ジャンプ先の足場を jj とすると、コスト hihj|h_i - h_j| を支払う。

カエルが足場 NN に辿り着くまでに支払うコストの総和の最小値を求めてください。

制約

  • 入力はすべて整数である。
  • 2N1052 \leq N \leq 10^5
  • 1K1001 \leq K \leq 100
  • 1hi1041 \leq h_i \leq 10^4

入力

入力は以下の形式で標準入力から与えられる。

NN KK

h1h_1 h2h_2 \ldots hNh_N

出力

カエルが支払うコストの総和の最小値を出力せよ。

5 3
10 30 40 50 20
30

足場 112255 と移動すると、コストの総和は 1030+3020=30|10 - 30| + |30 - 20| = 30 となります。

3 1
10 20 10
20

足場 112233 と移動すると、コストの総和は 1020+2010=20|10 - 20| + |20 - 10| = 20 となります。

2 100
10 10
0

足場 1122 と移動すると、コストの総和は 1010=0|10 - 10| = 0 となります。

10 4
40 10 20 70 80 10 20 70 80 60
40

足場 1144881010 と移動すると、コストの総和は 4070+7070+7060=40|40 - 70| + |70 - 70| + |70 - 60| = 40 となります。