https://www.luogu.com.cn/record/228183631
我的记录
#include <bits/stdc++.h>
using namespace std;
int n, m, a[101000], b[101000], ans = 0;
int main() {
cin >> n >> m;
for (int i = 1; i <= n; i++) cin >> a[i];
for (int i = 1; i <= m; i++) cin >> b[i];
sort(a + 1, a + n + 1);
for (int i = 1; i <= m; i++) {
int r = n + 1, l = 0;
while (l + 1 != r) {
int mid = (l + r) / 2;
if (a[mid] <= b[i]) {
l = mid;
} else {
r = mid;
}
}
if (b[i] <= a[1])
ans += a[1] - b[i];
else if (b[i] >= a[n])
ans += b[i] - a[n];
else
ans += min(abs(b[i] - a[l]), abs(a[r] - b[i]));
}
cout << ans;
}