#include<iostream> #include<algorithm> #include<vector> #include<map> using namespace std; int main() { int n; int m; cin>>n; cin>>m; vector<int>v(n+1); fill(v.begin(), v.end(), 0); map<int , int> mapa; mapa[1]=1; mapa[2]=2; mapa[3]=4; for(int i=0;i<m;i++) { int a,b,c; cin>>a>>b>>c; for(int j=a; j<=b;j++) { v[j]|=mapa[c]; } } int wynik=0; for(int i=1;i<=n;i++) { if( (v[i]&3)==3 && (v[i]|3)==3) { wynik++; } } cout<<wynik; 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 36 37 38 39 40 | #include<iostream> #include<algorithm> #include<vector> #include<map> using namespace std; int main() { int n; int m; cin>>n; cin>>m; vector<int>v(n+1); fill(v.begin(), v.end(), 0); map<int , int> mapa; mapa[1]=1; mapa[2]=2; mapa[3]=4; for(int i=0;i<m;i++) { int a,b,c; cin>>a>>b>>c; for(int j=a; j<=b;j++) { v[j]|=mapa[c]; } } int wynik=0; for(int i=1;i<=n;i++) { if( (v[i]&3)==3 && (v[i]|3)==3) { wynik++; } } cout<<wynik; return 0; } |