#include <iostream> using namespace std; uint32_t n, m, l, r, i, green; uint16_t *cans, k; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); cin >> n >> m; cans = new uint16_t[n](); green = 0; for(i = 0; i < m; i++) { cin >> l >> r >> k; k = 1 << (k-1); l--; r--; while(l <= r) cans[l++] |= k; } for(i = 0; i < n; i++) if(cans[i] == 3) green++; cout << green << '\n'; 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 | #include <iostream> using namespace std; uint32_t n, m, l, r, i, green; uint16_t *cans, k; int main(void) { ios_base::sync_with_stdio(0); cin.tie(0); cin >> n >> m; cans = new uint16_t[n](); green = 0; for(i = 0; i < m; i++) { cin >> l >> r >> k; k = 1 << (k-1); l--; r--; while(l <= r) cans[l++] |= k; } for(i = 0; i < n; i++) if(cans[i] == 3) green++; cout << green << '\n'; return 0; } |