#include <iostream> #include <set> using namespace std; int pocz[1001000][3]; int main() { // your code goes here int n,m; scanf("%d%d",&n,&m); while(m--) { int l,r,k; scanf("%d%d%d",&l,&r,&k); pocz[l][k-1]++; pocz[r+1][k-1]--; } int sumz=0; for(int i=1;i<=n;i++) { pocz[i][0]+=pocz[i-1][0]; pocz[i][1]+=pocz[i-1][1]; pocz[i][2]+=pocz[i-1][2]; //jak zielony to inc // printf("%d: %d %d %d\n",i,pocz[i][0],pocz[i][1],pocz[i][2]); if(pocz[i][0] >0 && pocz[i][1] > 0 && pocz[i][2]==0)sumz++; } printf("%d\n",sumz); 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 | #include <iostream> #include <set> using namespace std; int pocz[1001000][3]; int main() { // your code goes here int n,m; scanf("%d%d",&n,&m); while(m--) { int l,r,k; scanf("%d%d%d",&l,&r,&k); pocz[l][k-1]++; pocz[r+1][k-1]--; } int sumz=0; for(int i=1;i<=n;i++) { pocz[i][0]+=pocz[i-1][0]; pocz[i][1]+=pocz[i-1][1]; pocz[i][2]+=pocz[i-1][2]; //jak zielony to inc // printf("%d: %d %d %d\n",i,pocz[i][0],pocz[i][1],pocz[i][2]); if(pocz[i][0] >0 && pocz[i][1] > 0 && pocz[i][2]==0)sumz++; } printf("%d\n",sumz); return 0; } |