#include <bits/stdc++.h>
#define FOR(i,s,e) for (int i=s; i<=e; i++)
#define FOD(i,s,e) for (int i=s; i>=e; i--)
#define pb push_back
#define INF INT_MAX
#define SIZE 200000
using namespace std;
int N,K;
int h[SIZE],dp[SIZE];
int main() {
cin >> N >> K;
dp[0]=0;
FOR(i,1,N) {
cin >> h[i];
dp[i]=0;
}
dp[2]=abs(h[2]-h[1]);
FOR(i,3,N) {
dp[i]=INF;
FOR(j,1,fmin(K,i-1)) {
dp[i]=fmin(dp[i],dp[i-j]+abs(h[i]-h[i-j]));
}
}
cout << dp[N];
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgRk9SKGkscyxlKSBmb3IgKGludCBpPXM7IGk8PWU7IGkrKykKI2RlZmluZSBGT0QoaSxzLGUpIGZvciAoaW50IGk9czsgaT49ZTsgaS0tKQojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIElORiBJTlRfTUFYCiNkZWZpbmUgU0laRSAyMDAwMDAKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgTixLOwppbnQgaFtTSVpFXSxkcFtTSVpFXTsKCmludCBtYWluKCkgewoJY2luID4+IE4gPj4gSzsKCWRwWzBdPTA7CglGT1IoaSwxLE4pIHsKCQljaW4gPj4gaFtpXTsKCQlkcFtpXT0wOwoJfQoJZHBbMl09YWJzKGhbMl0taFsxXSk7CglGT1IoaSwzLE4pIHsKCQlkcFtpXT1JTkY7CgkJRk9SKGosMSxmbWluKEssaS0xKSkgewoJCQlkcFtpXT1mbWluKGRwW2ldLGRwW2ktal0rYWJzKGhbaV0taFtpLWpdKSk7CgkJfQoJfQoJY291dCA8PCBkcFtOXTsKCQoJcmV0dXJuIDA7Cn0K