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
34
35
#include <iostream>
#define MAXN 100001
using namespace std;

int n;
int m;
int a;
int b;
int k;
int w = 0;
int tab[MAXN][3];

int main()
{
    cin >> n >> m;
    for(int i = 0; i < m; i++)
    {
        cin >> a >> b >> k;
        tab[a - 1][k - 1]++;
        if(b < n)
            tab[b][k - 1]--;
    }
    if((tab[0][0] > 0) && (tab[0][1] > 0) && (tab[0][2] == 0))
        w++;
    for(int i = 1; i < n; i++)
    {
        tab[i][0] += tab[i - 1][0];
        tab[i][1] += tab[i - 1][1];
        tab[i][2] += tab[i - 1][2];
        if((tab[i][0] > 0) && (tab[i][1] > 0) && (tab[i][2] == 0))
        w++;
    }
    cout<<w;
    return 0;
}