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
36
#include<bits/stdc++.h>
using namespace std;

const int maxn=(int)1e6+10;
int tab[maxn];
int yel[maxn];
int red[maxn];
int blu[maxn];

int main()
{
	int n,m;
	scanf("%d %d",&n, &m);
	while(m--)
	{
		int l,r,k;
		scanf("%d %d %d",&l, &r, &k);
		if(k==1)
			{ ++yel[l]; --yel[r+1]; }
		if(k==2)
			{ ++blu[l]; --blu[r+1]; }
		if(k==3)
			{ ++red[l]; --red[r+1]; }
	}
	int wyn=0;
	int rr=0,bb=0,yy=0;
	for(int i=1;i<=n;i++)
	{
		yy+=yel[i];
		bb+=blu[i];
		rr+=red[i];
		if(yy>0 && bb>0 && rr==0)
			++wyn;
	}
	printf("%d",wyn);
}