#include <bits/stdc++.h>
using namespace std;
#define int long long
#define all(v) v.begin(), v.end()
const int inf = 2e6, M = 1e5 + 1;
int pre3[2*inf+5],n,l,r,pre2[2*inf+5];
int* pre1=pre2+inf+1;
int* pre=pre3+inf+1;
vector<int> v;
int cal(int x,int y,int m,int a)
{
x=max(x,l), y=min(y,r);
if (x>y) return 0;
y=min(y,inf), x=max(x,-inf);
return (pre[y]-pre[x-1])*m+a*(pre1[y]-pre1[x-1]);
}
signed main()
{
int m;
cin>>n>>m;
int a[n], b[n];
for (int i=0;i<n;i++)
cin>>a[i];
for (int i=0;i<n;i++)
cin>>b[i], v.push_back(a[i]-b[i]);
sort(all(v));
for (int i=0;i<v.size();i++)
pre[v[i]]+=abs(v[i]), pre1[v[i]]++;
for (int i=-inf+1;i<=inf;i++)
pre1[i]+=pre1[i-1], pre[i]+=pre[i-1];
int ans=1e18;
for (int k=-inf;k<=inf;k++)
{
int s=-1, e=2*inf+1;
while (s+1<e)
{
int mid=(s+e)/2;
int x=pre1[max(-mid-k,-inf-1)]+n-pre1[min(mid-k-1,inf)];
if (x>=m)
s=mid;
else
e=mid;
}
l=-s-k+1, r=s-k-1;int val=0;
if (k<0)
val=cal(l,0,1,-k)+cal(1,-k,-1,-k)+cal(-k+1,r,1,k);
else
val=cal(l,-k,1,-k)+cal(-k+1,0,-1,k)+cal(1,r,1,k);
ans=min(ans,val);
}
cout<<ans<<endl;
return 0;
}