#include<bits/stdc++.h>
using namespace std;
int pocz[1000010][4];
int kon[1000010][4];
int main()
{
int czerwony=0, niebieski=0, zolty=0;
int n, m, i, p, k, kol, wynik=0;
scanf("%d%d", &n, &m);
for(i=0;i<m;i++)
{
scanf("%d%d%d", &p, &k, &kol);
pocz[p][kol]++;
kon[k][kol]++;
}
for(i=1;i<=n;i++)
{
zolty+=pocz[i][1];
zolty-=kon[i-1][1];
niebieski+=pocz[i][2];
niebieski-=kon[i-1][2];
czerwony+=pocz[i][3];
czerwony-=kon[i-1][3];
//printf("%d %d %d\n", zolty, niebieski, czerwony);
if(zolty>0 && niebieski>0 && czerwony==0)
{
wynik++;
//printf("%d\n", i);
}
}
printf("%d", wynik);
}
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 | #include<bits/stdc++.h> using namespace std; int pocz[1000010][4]; int kon[1000010][4]; int main() { int czerwony=0, niebieski=0, zolty=0; int n, m, i, p, k, kol, wynik=0; scanf("%d%d", &n, &m); for(i=0;i<m;i++) { scanf("%d%d%d", &p, &k, &kol); pocz[p][kol]++; kon[k][kol]++; } for(i=1;i<=n;i++) { zolty+=pocz[i][1]; zolty-=kon[i-1][1]; niebieski+=pocz[i][2]; niebieski-=kon[i-1][2]; czerwony+=pocz[i][3]; czerwony-=kon[i-1][3]; //printf("%d %d %d\n", zolty, niebieski, czerwony); if(zolty>0 && niebieski>0 && czerwony==0) { wynik++; //printf("%d\n", i); } } printf("%d", wynik); } |
English