#include <bits/stdc++.h>
#define ll long long
#define INF 100000000000000000
#define forni for (int i=0;i<n;i++)
#define fornj for (int j=0;j<n;j++)
using namespace std;
int n,m,b[5002],c[5002];
ll int dp[5002][5002];
ll int func(){
for (int i=n;i>=1;i--){
for (int k=m-n+i;k>=i;k--){
dp[i][k]=INF;
for (int j=k;j<=m-n+i;j++){
dp[i][k] = min(dp[i][k],abs(b[i]-c[j])+dp[i+1][k+1]);
}
}
}
cout << dp[1][1];
return 0;
}
int main(){
scanf("%d%d",&n,&m);
for (int i=1;i<=n;i++) scanf("%d",&b[i]);
for (int i=1;i<=m;i++) scanf("%d",&c[i]);
sort(b,b+n+1);
sort(c,c+m+1);
func();
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgSU5GIDEwMDAwMDAwMDAwMDAwMDAwMAojZGVmaW5lIGZvcm5pIGZvciAoaW50IGk9MDtpPG47aSsrKQojZGVmaW5lIGZvcm5qIGZvciAoaW50IGo9MDtqPG47aisrKQp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG4sbSxiWzUwMDJdLGNbNTAwMl07CmxsIGludCBkcFs1MDAyXVs1MDAyXTsKCmxsIGludCBmdW5jKCl7Cglmb3IgKGludCBpPW47aT49MTtpLS0pewoJCWZvciAoaW50IGs9bS1uK2k7az49aTtrLS0pewoJCQlkcFtpXVtrXT1JTkY7CgkJCWZvciAoaW50IGo9aztqPD1tLW4raTtqKyspewoJCQkJZHBbaV1ba10gPSBtaW4oZHBbaV1ba10sYWJzKGJbaV0tY1tqXSkrZHBbaSsxXVtrKzFdKTsKCQkJfQoJCX0KCX0KCWNvdXQgPDwgZHBbMV1bMV07CglyZXR1cm4gMDsKfQoKaW50IG1haW4oKXsKCXNjYW5mKCIlZCVkIiwmbiwmbSk7Cglmb3IgKGludCBpPTE7aTw9bjtpKyspIHNjYW5mKCIlZCIsJmJbaV0pOwoJZm9yIChpbnQgaT0xO2k8PW07aSsrKSBzY2FuZigiJWQiLCZjW2ldKTsKCXNvcnQoYixiK24rMSk7Cglzb3J0KGMsYyttKzEpOwoJZnVuYygpOwoJcmV0dXJuIDA7Cn0K