#include <stdio.h>
main()
{
    int N,K;
    scanf("%d %d",&N,&K);
    int niz[N],p=0,k=N-1,broj;
    for(int i=0;i<N;i++)
    {
        scanf("%d",&niz[i]);
    }
    int min=niz[0],max=niz[0];
    if(N==K)
    {
        while(K!=2)
        {
                if(niz[p]<niz[k])
            {
                niz[p]=niz[p]-niz[k];
                K--;
                k--;
            }
            else
            {
                niz[k]=niz[k]-niz[p];
                K--;
                p++;
            }
            }
            if(niz[p]<niz[k])
            broj=niz[k]-niz[p];
        else
            broj=niz[p]-niz[k];

        }
        else
        {
            if(K==2)
            {
                for(int i=1;i<N;i++)
                    {
                        if(niz[i]>max)
                            max=niz[i];
                    }

                for(int j=1;j<N;j++)
                    {
                        if(niz[j]<min)
                            min=niz[j];
                    }
                    broj=max-min;
            }
            else
                broj=10;
        }
        printf("%d",broj);
    }