#include <bits/stdc++.h>
using namespace std;

int main()
{
	long long W, H, res = 0;
	cin >> W >> H;
	vector<long long> p(W), sum(W);
	for (int i = 0; i < W; i++) {
		cin >> p[i];
		res += p[i];
	}
	sort(p.begin(), p.end());
	sum[0] = p[0];
	for (int i = 1; i < W; i++) {
		sum[i] = sum[i - 1] + p[i];
	}
	for (int j = 0, qj; j < H; j++) {
		cin >> qj;
		res += qj;
		auto ub = upper_bound(p.begin(), p.end(), qj);
		if (ub != p.begin()) {
			res += sum[ub - p.begin() - 1];
			res += qj * (W - (ub - p.begin()));
		}
		else {
			res += qj * W;
		}
	}
	cout << res << endl;
	return 0;
}
