#include<bits/stdc++.h>
using namespace std;
int Left[1000001],Right[1000001],n,Rank[2000001],rk[2000001],a[100001],b[100001];
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d",&a[i]);
b[i]=a[i]+1000000;
}
sort(a+1,a+n+1);
for(int i=1;i<=n;i++)
{
Left[i]=i-1;
Right[i]=i+1;
if(!Rank[a[i]+1000000])
Rank[a[i]+=1000000]=i,rk[a[i]]=1;
else
{
rk[a[i]+=1000000]++;
}
}
Right[n]=0;
int ans=0;
for(int i=n;i>=1;i--)
{
if(rk[b[i]]>=2)
{
rk[b[i]]--;
continue;
}
else
{
int id=Rank[b[i]];
rk[b[id]]=0;
int c1=abs(a[id]-a[Left[id]]),c2=abs(a[id]-a[Right[id]]);
if(c1<c2)
{
ans+=c1;
}
else
{
ans+=c2;
}
Left[Right[id]]=Left[b[id]];
Right[Left[id]]=Right[b[id]];
}
}
printf("%d\n",ans);
}