/*
TASK:ots
LANG:C++
*/
#include <iostream.h>

long int x[1000000],n,min=-1;
void gsort(long int  x[],int n)
{
     int i,j;
     for(i=0;i<n;i++)
     for(j=i+1;j<n;j++)
     if(x[i]>x[j])
     {
                  x[i]+=x[j];
                  x[j]=x[i]-x[j];
                  x[i]-=x[j];
                  }
 }
void ots(int a,int d,int c)
{
     if(c==0&&a!=n-2)
                 ots(a+1,d+x[a+1]-x[a],1);
     if(a==n-2)
                 {
                 d=d+x[a+1]-x[a];
                 if(d<min||min==-1)
                                   min=d;
                                   }
     if(c==1&&a!=n-2)
         {
             ots(a+1,d+x[a+1]-x[a],1);
             ots(a+1,d,0);
             }
     
 }
int main()
{
    int i;
    cin>>n;
    for(i=0;i<n;i++)
    cin>>x[i];
    gsort(x,n);
    ots(0,0,0);
    cout<<min<<"\n";
    cin.get();
    cin.get();
    return 0;
}
