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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#include <bits/stdc++.h>
using namespace std;
char tab[1000005];
int spr[1000005];
int n,m,l,r,k,w;
char a;
int main()
{
	ios_base::sync_with_stdio(0);
  	cin>>n>>m;
  	for(int f=0;f<m;f++)
  	{
  		cin>>l>>r>>k;
  		if(k==1)
  			a='r';
  		if(k==2)
  			a='n';
  		if(k==3)
  			a='c';
  	
  		for(int i=l;i<=r;i++)
  		{
  			if((tab[i]=='r')&&(a=='n'))
  			{
  				if(spr[i]==0)
  				{	
				 	++w;
  					tab[i]='z';
  					spr[i]=1;
  				}
			}
			else
			if((tab[i]=='n')&&(a=='r'))
  			{
  				if(spr[i]==0)
  				{	
				 	++w;
  					tab[i]='z';
  					spr[i]=1;
  				}
			}
			else
			if((tab[i]=='z')&&(a=='c'))
  			{
  				--w;
  				tab[i]='b';
  				spr[i]=2;
			}
			else
			if((spr[i]==1)&&(a=='c'))
			{
				--w;
				tab[i]='b';
				spr[i]=2;
			}
			else
			if(a=='c')
			{
				tab[i]='b';
			}
			else	
			if(tab[i]!='b')
			{
				tab[i]=a;
			}	
	  	}
	}
	cout<<w;
    return 0;
}