#include<bits/stdc++.h>
using namespace std;
int dp[100005];
int solve(int a[],int n,int k1,int j)
{
//base case
if(j==0)
return 0;
if(dp[j]!=0){
return dp[j];
}
int ans=INT_MAX;
for(int k=1;k<=k1;k++){
if(j-k>=0)
ans=min(ans,abs(a[j]-a[j-k])+solve(a,n,k1,j-k));
}
return dp[j]=ans;
}
int main(){
memset(dp, 0, sizeof(dp));
int n,k1;
cin>>n>>k1;
int a[n];
for(int i=0;i<n;i++)
cin>>a[i];
cout<<solve(a,n,k1,n-1);
return 0;
}