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
29
30
31
32
33
#include <iostream>
#include <vector>
using namespace std;

int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);

  int n, m; cin >> n >> m;
  vector <vector <int>> A(n + 1, vector <int>(3, 0));
  
  for (int i = 0; i < m; i++) {
    int a, b, c; cin >> a >> b >> c;
    a--;
    b--;
    A[a][--c]++;
    A[b + 1][c]--;
  }

  int curr[3] = {0};
  int ans = 0;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < 3; j++) {
      curr[j] += A[i][j];
    }

    if (curr[0] >= 1 && curr[1] >= 1 && curr[2] == 0) ans++;
  }
  cout << ans << "\n";

  return 0;
}