import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

class Main
{
    public static void main(String args[]) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int K=sc.nextInt();
        sc.nextLine();
        List<Integer> list=new ArrayList<Integer>();
        for(int i=0;i<n;i++)
          list.add(sc.nextInt());
        List<Integer> dyn=new ArrayList<Integer>();
        dyn.add(0);
        dyn.add((int)(Math.abs(list.get(1)-list.get(0))));
        for(int i=2;i<n;i++)
        {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        }
        System.out.println(dyn.get(n-1));
        sc.close();
    }
} import java.io.*; io.* java import java.util.ArrayList; ArrayList java.util import java.util.List; List java.util import java.util.Scanner; Scanner java.util class Main
{
    public static void main(String args[]) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int K=sc.nextInt();
        sc.nextLine();
        List<Integer> list=new ArrayList<Integer>();
        for(int i=0;i<n;i++)
          list.add(sc.nextInt());
        List<Integer> dyn=new ArrayList<Integer>();
        dyn.add(0);
        dyn.add((int)(Math.abs(list.get(1)-list.get(0))));
        for(int i=2;i<n;i++)
        {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        }
        System.out.println(dyn.get(n-1));
        sc.close();
    }
} Main public static void main(String args[]) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int K=sc.nextInt();
        sc.nextLine();
        List<Integer> list=new ArrayList<Integer>();
        for(int i=0;i<n;i++)
          list.add(sc.nextInt());
        List<Integer> dyn=new ArrayList<Integer>();
        dyn.add(0);
        dyn.add((int)(Math.abs(list.get(1)-list.get(0))));
        for(int i=2;i<n;i++)
        {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        }
        System.out.println(dyn.get(n-1));
        sc.close();
    } main {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int K=sc.nextInt();
        sc.nextLine();
        List<Integer> list=new ArrayList<Integer>();
        for(int i=0;i<n;i++)
          list.add(sc.nextInt());
        List<Integer> dyn=new ArrayList<Integer>();
        dyn.add(0);
        dyn.add((int)(Math.abs(list.get(1)-list.get(0))));
        for(int i=2;i<n;i++)
        {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        }
        System.out.println(dyn.get(n-1));
        sc.close();
    } Scanner sc=new Scanner(System.in); sc new Scanner(System.in) int n=sc.nextInt(); n sc.nextInt() sc.nextInt sc int K=sc.nextInt(); K sc.nextInt() sc.nextInt sc sc.nextLine() sc.nextLine sc List<Integer> list=new ArrayList<Integer>(); list new ArrayList<Integer>() for(int i=0;i<n;i++)
          list.add(sc.nextInt()); int i=0; int i=0; i 0 i<n i n i++ i++ i list.add(sc.nextInt()); list.add(sc.nextInt()) list.add list sc.nextInt() sc.nextInt sc List<Integer> dyn=new ArrayList<Integer>(); dyn new ArrayList<Integer>() dyn.add(0) dyn.add dyn 0 dyn.add((int)(Math.abs(list.get(1)-list.get(0)))) dyn.add dyn (int)(Math.abs(list.get(1)-list.get(0))) Math.abs Math list.get(1)-list.get(0) list.get(1) list.get list 1 list.get(0) list.get list 0 for(int i=2;i<n;i++)
        {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        } int i=2; int i=2; i 2 i<n i n i++ i++ i {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        } {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        } int min=Integer.MAX_VALUE; min Integer.MAX_VALUE Integer Integer.MAX_VALUE for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              } int j=1; int j=1; j 1 j<=K j K j++ j++ j {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              } {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              } if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   } i-j>=0 i-j i j 0 {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   } min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j)) min (int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j)) Math.min Math min Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j) Math.abs(list.get(i)-list.get(i-j)) Math.abs Math list.get(i)-list.get(i-j) list.get(i) list.get list i list.get(i-j) list.get list i-j i j dyn.get(i-j) dyn.get dyn i-j i j if(i-j<0)
                    break; i-j<0 i-j i j 0 break; dyn.add(min) dyn.add dyn min System.out.println(dyn.get(n-1)) System.out.println System.out System System.out dyn.get(n-1) dyn.get dyn n-1 n 1 sc.close() sc.close sc String args[] args
import java.io.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

class Main
{
    public static void main(String args[]) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int K=sc.nextInt();
        sc.nextLine();
        List<Integer> list=new ArrayList<Integer>();
        for(int i=0;i<n;i++)
          list.add(sc.nextInt());
        List<Integer> dyn=new ArrayList<Integer>();
        dyn.add(0);
        dyn.add((int)(Math.abs(list.get(1)-list.get(0))));
        for(int i=2;i<n;i++)
        {
            int min=Integer.MAX_VALUE;
            for(int j=1;j<=K;j++)
              {
                  if(i-j>=0)
                   {
                          min=(int)Math.min(min,Math.abs(list.get(i)-list.get(i-j))+dyn.get(i-j));
                   }
                   if(i-j<0)
                    break;
              }
            dyn.add(min);
        }
        System.out.println(dyn.get(n-1));
        sc.close();
    }
}