1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <bits/stdc++.h>
using namespace std;

#define MAXN 1000000 + 10
int n, m, l, r, k;
int tab[MAXN][3];
int akt[3];
int main() {
	cin >> n >> m;
	while(m--) {
		cin >> l >> r >> k;
		tab[l - 1][k - 1]++;
		tab[r][k - 1]--;
	}
	//cout << "\n";
	//for (int i = 0; i <= n; i++) {
	//	cout << tab[i][0] << " " << tab[i][1] << " " << tab[i][2] << "\n";
	//}
	int result = 0;
	for (int i = 0; i < n; i++) {
		akt[0] += tab[i][0];
		akt[1] += tab[i][1];
		akt[2] += tab[i][2];
		if (akt[0] > 0 && akt[1] > 0 && akt[2] == 0)
			result += 1;
	}
	cout << result;
}