#include long long int l[100005]; int main() { long long int n, m; scanf("%lld %lld", &n, &m); long long int i; for (i = 0; i < n; i++) scanf("%lld", &l[i + 1]); l[n + 1] = 1e18; l[0] = -1e18; long long int ans = 0; long long int f, b, w, dist; long long int min, mid, max; for (i = 0; i < m; i++) { scanf("%lld %lld %lld", &f, &b, &w); min = -1; max = n + 1; while (max - min > 1) { mid = (max + min) / 2; if (l[mid] > f) max = mid; else min = mid; } dist = f - l[min]; if (dist > l[max] - f) dist = l[max] - f; if (b > w - dist) ans += b; else ans += w - dist; } printf("%lld\n", ans); return 0; }