#include<iostream>
#include<algorithm>
#include<vector>
#include<queue>
#define lol(i,n) for(int i=0;i<n;i++)
#define mod 1000000007
typedef long long ll;
using namespace std;
int a[1100];
pair<int,int> F(int left,int right){
    int p=-1,q=mod;
    for(int i=left;i<right;i++){
        p=max(p,a[i]);
        q=min(q,a[i]);
    }
    return make_pair(p,q);
}
int main(){
    int n,m;
    cin>>n>>m;
    lol(i,n)cin>>a[i];
    int left=0,right=m;
    int ans=0;
    while(true){
        int p,q;
        if(left<right){
            pair<int,int> tmp=F(left,right);
            p=tmp.first,q=tmp.second;
        }
        else{
            pair<int,int> tmp=F(0,right);
            p=tmp.first,q=tmp.second;
            tmp=F(left,n);
            p=max(p,tmp.first);
            q=min(q,tmp.second);
        }
        ans+=p-q;
        left=right;
        right=(right+m)%n;
        if(left==0)break;
    }
    cout<<ans<<endl;
    return 0;
}