#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
int m,n;
struct s
{
int f;
bool p;
} b[100000];
bool cmp1(s x,s y)
{
return x.f<y.f;
}
long long sum=0;
long long ans[100000],ttt=1;
void find(int i)
{
int l=0,r=0;
for(int j=i;j>=1;j--)
{
if(b[j].p==0)
{
l=b[i].f-b[j].f;
break;
}
}
for(int j=i;j<=m+n;j++)
{
if(b[j].p==0)
{
r=b[j].f-b[i].f;
break;
}
}
if(r==0)
r=14523885;
if(l==0)
l=14528835;
if(r>=l)
ans[ttt]=l;
if(r<l)
ans[ttt]=r;
ttt++;
}
int main()
{
cin>>m>>n;
for(int i=1;i<=m;i++)
{
cin>>b[i].f;
b[i].p=0;
}
for(int i=m+1;i<=m+n;i++)
{
cin>>b[i].f;
b[i].p=1;
}
sort(b+1,b+m+n+1,cmp1);
for(int i=1;i<=m+n;i++)
{
if(b[i].p==1)
{
find(i);
}
}
for(int i=1;i<=100000;i++)
{
sum+=ans[i];
}
cout<<sum;
}