#include <bits/stdc++.h>
using namespace std;
const int MAXN = 2e5 + 5;
const int MOD = 1e9 + 7;
int n, m;
vector<long long> b, g;
long long ans = 0;
long long mx = -1;
long long sumOfBoys = 0;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cin >> n >> m;
  bool ok = true;
  for (int i = 0; i < n; i++) {
    long long k;
    cin >> k;
    b.push_back(k);
    sumOfBoys += k;
    mx = max(mx, k);
  }
  for (int i = 0; i < m; i++) {
    long long k;
    cin >> k;
    if (k < mx) {
      cout << -1;
      return 0;
    } else if (k == mx) {
      ok = false;
    }
    ans += k;
  }
  if (ok) {
    sort(b.begin(), b.end());
    sumOfBoys -= b[n - 1] + b[n - 2];
    ans += sumOfBoys * m;
    ans += b[n - 2] * (m - 1);
    ans += b[n - 1];
    cout << ans;
  } else {
    sort(b.begin(), b.end());
    sumOfBoys -= b[n - 1];
    ans += sumOfBoys * m;
    cout << ans;
  }
}
