#include <bits/stdc++.h>
#pragma comment(linker, "/STACK:16777216")
using namespace std;
template <class _T>
inline string tostr(const _T& a) {
  ostringstream os("");
  os << a;
  return os.str();
}
const long double PI = 3.1415926535897932384626433832795;
const long double EPS = 1e-9;
int n, m, k, x, y, z;
long long r[120000];
vector<int> p[120000], q[120000];
int main() {
  scanf("%d%d%d", &n, &m, &k);
  for (int i = 0; i < m; i++) {
    scanf("%d%d%d", &x, &y, &z);
    p[x].push_back(z);
    q[y].push_back(z + y - x);
  }
  long long pls = 0, now = 0;
  for (int i = 1; i <= n; i++) {
    now += pls;
    for (int j = 0; j < p[i].size(); j++) {
      now += p[i][j];
      pls++;
    }
    r[i] = now;
    for (int j = 0; j < q[i].size(); j++) {
      now -= q[i][j];
      pls--;
    }
  }
  long long res = 0;
  for (int i = 0; i < k; i++) {
    scanf("%d", &x);
    res += r[x];
  }
  cout << res;
  return 0;
}
