#include <bits/stdc++.h>
using namespace std;
const int MAX_N = 1000000 + 20;
int pos[MAX_N], mark[MAX_N];
int inter[MAX_N];
set<int> D;
long long ans;
int n, k;
void add(int x) {
  for (; x <= n; x += x & (-x)) ++inter[x];
}
int get(int x) {
  if (x < 1) return 0;
  int res = 0;
  for (; x > 0; x -= x & (-x)) res += inter[x];
  return res;
}
int main() {
  ios::sync_with_stdio(false);
  cin >> n >> k;
  for (int i = 0; i < n; i++) {
    int x;
    cin >> x;
    pos[x] = i + 1;
  }
  for (int i = 0; i < k; ++i) {
    int x;
    cin >> x;
    mark[x] = 1;
  }
  D.insert(0);
  D.insert(n + 1);
  for (int i = 1; i <= n; ++i) {
    if (mark[i])
      D.insert(pos[i]);
    else {
      int l, r;
      set<int>::iterator it = D.lower_bound(pos[i]);
      r = *it - 1;
      --it;
      l = *it + 1;
      ans += r - l + 1 - get(r) + get(l - 1);
      add(pos[i]);
    }
  }
  cout << ans << endl;
  return 0;
}
