#include <bits/stdc++.h>
int n, m, a[111111], b[111111];
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 0; i < n; ++i) scanf("%d", a + i);
  for (int i = 0; i < m; ++i) scanf("%d", b + i);
  std::sort(a, a + n, std::greater<int>()), std::sort(b, b + m);
  if (b[0] < a[0]) return puts("-1"), 0;
  long long ans = 0;
  for (int i = 0; i < m; ++i) ans += b[i];
  if (a[0] != b[0]) ans += a[0] - a[1];
  for (int i = 1; i < n; ++i) ans += (long long)a[i] * m;
  printf("%lld\n", ans);
}
