#include <iostream> #define MAXN 100001 using namespace std; int n; int m; int a; int b; int k; int w = 0; int tab[MAXN][3]; int main() { cin >> n >> m; for(int i = 0; i < m; i++) { cin >> a >> b >> k; tab[a - 1][k - 1]++; if(b < n) tab[b][k - 1]--; } if((tab[0][0] > 0) && (tab[0][1] > 0) && (tab[0][2] == 0)) w++; for(int i = 1; i < n; i++) { tab[i][0] += tab[i - 1][0]; tab[i][1] += tab[i - 1][1]; tab[i][2] += tab[i - 1][2]; if((tab[i][0] > 0) && (tab[i][1] > 0) && (tab[i][2] == 0)) w++; } cout<<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 28 29 30 31 32 33 34 35 | #include <iostream> #define MAXN 100001 using namespace std; int n; int m; int a; int b; int k; int w = 0; int tab[MAXN][3]; int main() { cin >> n >> m; for(int i = 0; i < m; i++) { cin >> a >> b >> k; tab[a - 1][k - 1]++; if(b < n) tab[b][k - 1]--; } if((tab[0][0] > 0) && (tab[0][1] > 0) && (tab[0][2] == 0)) w++; for(int i = 1; i < n; i++) { tab[i][0] += tab[i - 1][0]; tab[i][1] += tab[i - 1][1]; tab[i][2] += tab[i - 1][2]; if((tab[i][0] > 0) && (tab[i][1] > 0) && (tab[i][2] == 0)) w++; } cout<<w; return 0; } |