#include <bits/stdc++.h>
using namespace std;
int dx[] = {-1, -1, -1, 0, 0, 1, 1, 1};
int dy[] = {-1, 0, 1, -1, 1, -1, 0, 1};
int xChange[] = {0, 1, 0, -1};
int yChange[] = {1, 0, -1, 0};
const int N = 100005;
int n, m, k;
long long ans;
vector<pair<pair<long long, long long>, long long>> vpp(N);
int main() {
  ios::sync_with_stdio(false), cin.tie(NULL);
  cin >> n >> m >> k;
  for (int i = 0; i < m; i++) {
    long long s, e, val;
    cin >> s >> e >> val;
    vpp[i].first.first = s;
    vpp[i].first.second = e;
    vpp[i].second = val;
  }
  while (k--) {
    int p;
    cin >> p;
    for (int j = 0; j < m; j++) {
      if (vpp[j].first.first <= p && vpp[j].first.second >= p) {
        long long sc = p - vpp[j].first.first + vpp[j].second;
        ans += sc;
      }
    }
  }
  cout << ans;
  return 0;
}
