#include <stdio.h>
#include <string.h>
int T[1000111][3], S[3];
int n,m;
int main()
{
memset(T, 0, sizeof(T));
scanf("%d %d", &n, &m);
for (int i=0; i<m; i++) {
int l,r,k;
scanf("%d %d %d", &l, &r, &k);
T[l][k-1] ++;
T[r+1][k-1] --;
}
S[0] = S[1] = S[2] = 0;
int z = 0;
for (int i=1; i<=n; i++) {
S[0] += T[i][0];
S[1] += T[i][1];
S[2] += T[i][2];
if (S[0] && S[1] && !S[2]) z ++;
}
printf("%d\n", z);
return 0;
}
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 <stdio.h> #include <string.h> int T[1000111][3], S[3]; int n,m; int main() { memset(T, 0, sizeof(T)); scanf("%d %d", &n, &m); for (int i=0; i<m; i++) { int l,r,k; scanf("%d %d %d", &l, &r, &k); T[l][k-1] ++; T[r+1][k-1] --; } S[0] = S[1] = S[2] = 0; int z = 0; for (int i=1; i<=n; i++) { S[0] += T[i][0]; S[1] += T[i][1]; S[2] += T[i][2]; if (S[0] && S[1] && !S[2]) z ++; } printf("%d\n", z); return 0; } |
English