#include <bits/stdc++.h>
using namespace std;
const long long mod = 1000000009;
int main() {
  int n, m, k;
  scanf("%d%d%d", &n, &m, &k);
  vector<pair<pair<int, int>, int> > cor;
  int l, r, cur;
  while (m--) {
    scanf("%d%d%d", &l, &r, &cur);
    cor.push_back({{l, r}, cur});
  }
  long long res = 0;
  while (k--) {
    scanf("%d", &cur);
    for (__typeof(cor.size()) i = (0) - ((0) > (cor.size()));
         i != (cor.size()) - ((0) > (cor.size()));
         i += 1 - 2 * ((0) > (cor.size()))) {
      if (cor[i].first.first <= cur && cor[i].first.second >= cur) {
        res += cor[i].second + cur - cor[i].first.first;
      }
    }
  }
  printf("%I64d", res);
  return 0;
}
