#include <bits/stdc++.h> const int N=1000000; using namespace std; int n,q,a,b,c,l,t[N+1][3],v[N+1],w; int main() { scanf("%d %d",&n,&q); for (int i=0; i<q; i++) { scanf("%d %d %d",&a,&b,&c); a--; c--; t[a][c]++; t[b][c]--; } for (int i=0; i<3; i++) { l=0; for (int j=0; j<n; j++) { l+=t[j][i]; if (l!=0) v[j]|=1<<i; } } for (int i=0; i<n; i++) { if (v[i]==3) w++; } printf("%d\n",w); 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 | #include <bits/stdc++.h> const int N=1000000; using namespace std; int n,q,a,b,c,l,t[N+1][3],v[N+1],w; int main() { scanf("%d %d",&n,&q); for (int i=0; i<q; i++) { scanf("%d %d %d",&a,&b,&c); a--; c--; t[a][c]++; t[b][c]--; } for (int i=0; i<3; i++) { l=0; for (int j=0; j<n; j++) { l+=t[j][i]; if (l!=0) v[j]|=1<<i; } } for (int i=0; i<n; i++) { if (v[i]==3) w++; } printf("%d\n",w); return 0; } |