#include<bits/stdc++.h> using namespace std; int t[1000005][3]; int n,m,w; int main() { scanf("%d%d",&n,&m); for(int i=0;i<m;++i) { int l,r,k; scanf("%d%d%d",&l,&r,&k); t[l][k-1]+=1; t[r+1][k-1]-=1; } for(int i=1;i<=n;++i) { for(int j=0;j<3;++j) t[i][j]+=t[i-1][j]; w+=((t[i][0]>0)&&(t[i][1]>0)&&(t[i][2]==0)); } printf("%d\n",w); }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | #include<bits/stdc++.h> using namespace std; int t[1000005][3]; int n,m,w; int main() { scanf("%d%d",&n,&m); for(int i=0;i<m;++i) { int l,r,k; scanf("%d%d%d",&l,&r,&k); t[l][k-1]+=1; t[r+1][k-1]-=1; } for(int i=1;i<=n;++i) { for(int j=0;j<3;++j) t[i][j]+=t[i-1][j]; w+=((t[i][0]>0)&&(t[i][1]>0)&&(t[i][2]==0)); } printf("%d\n",w); } |