#include <bits/stdc++.h>
#define MAX_H 5005
#define MAX_N 30005
using namespace std;
struct node {
int l, r, need;
};
node a[MAX_N];
bool b[MAX_H];
int ans = 0;
bool cmp(node x, node y) {
if(x.r==y.r)
return x.l<y.l;
return x.r < y.r;
}
int main() {
int n, h;
cin >> n >> h;
for (int i = 1; i <= h; i++)
cin >> a[i].l >> a[i].r >> a[i].need;
sort(a + 1, a + h + 1, cmp);
for (int i = 1; i <= h; i++) {
int sum = 0;
for (int j = a[i].l; j <= a[i].r; j++)
sum += b[j];
if (sum >= a[i].need)
continue;
for (int j = a[i].r; j >= a[i].l; j--) {
if (sum == a[i].need)
break;
if (b[j])
continue;
b[j] = true;
sum++;
ans++;
}
}
cout << ans;
return 0;
}