#include <bits/stdc++.h> using namespace std; bool tab[3][1000001]; int n, m, l, r, k, h, sum; int main(){ scanf("%d%d", &n, &m); for(int i=0; i<m; i++){ scanf("%d%d%d", &l, &r, &k); h=r-l+1; for(int j=0; j<h; j++){ tab[k-1][l+j]=1; } } for(int i=0; i<=n; i++){ if(tab[0][i]==1 && tab[1][i]==1){ if(tab[2][i]==0){ sum++; } } } printf("%d", sum); 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 | #include <bits/stdc++.h> using namespace std; bool tab[3][1000001]; int n, m, l, r, k, h, sum; int main(){ scanf("%d%d", &n, &m); for(int i=0; i<m; i++){ scanf("%d%d%d", &l, &r, &k); h=r-l+1; for(int j=0; j<h; j++){ tab[k-1][l+j]=1; } } for(int i=0; i<=n; i++){ if(tab[0][i]==1 && tab[1][i]==1){ if(tab[2][i]==0){ sum++; } } } printf("%d", sum); return 0; } |