#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, m;
  scanf("%d %d", &n, &m);
  vector<int> p(n);
  vector<int> sigma(n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &p[i]);
    p[i]--;
    sigma[p[i]] = i;
  }
  set<pair<int, int>> sl, sr;
  for (int i = 0; i < m; i++) {
    int l, r;
    scanf("%d %d", &l, &r);
    l--, r--;
    l = sigma[l], r = sigma[r];
    if (l > r) swap(l, r);
    sl.insert(make_pair(l, r));
    sr.insert(make_pair(r, l));
  }
  long long ans = 0;
  for (int i = 0; i < n; i++) {
    long long curr;
    if (sr.size() == 0)
      curr = n;
    else
      curr = sr.begin()->first;
    ans += curr - i;
    while (!sl.empty() && sl.begin()->first == i) {
      auto el = *sl.begin();
      sl.erase(el);
      sr.erase(make_pair(el.second, el.first));
    }
  }
  cout << ans;
  return 0;
}
