#include using namespace std; int main(){ int N, M; cin >> N >> M; vector L(N); for (int i = 0; i < N; i++){ cin >> L[i]; } long long ans = 0; for (int i = 0; i < M; i++){ int F, B, W; cin >> F >> B >> W; int p = lower_bound(L.begin(), L.end(), F) - L.begin(); int tmp = B; if (p >= 1){ tmp = max(tmp, W - (F - L[p - 1])); } if (p < N){ tmp = max(tmp, W - (L[p] - F)); } ans += tmp; } cout << ans << endl; }