#include <bits/stdc++.h>
using namespace std;
const int N = 1000 * 1000 + 7;
int r[N], y[N], b[N];
void Licz(int n)
{
int il, i;
il = 0;
for(i = 1; i <= n; ++i)
{
il += r[i];
r[i] = il;
}
il = 0;
for(i = 1; i <= n; ++i)
{
il += b[i];
b[i] = il;
}
il = 0;
for(i = 1; i <= n; ++i)
{
il += y[i];
y[i] = il;
}
}
void Wyn(int n)
{
int w, i;
w = 0;
for(i = 1; i <= n; ++i)
{
//cout << y[i] << " " << b[i] << " " << r[i] << "\n";
if(r[i] < 1 && y[i] >= 1 && b[i] >= 1)
++w;
}
cout << w << "\n";
}
void Wczytaj(int &n)
{
int m, i, p, k, x;
cin >> n >> m;
for(i = 1; i <= m; ++i)
{
cin >> p >> k >> x;
if(x == 1)
{
++y[p];
--y[k + 1];
}
if(x == 2)
{
++b[p];
--b[k + 1];
}
if(x == 3)
{
++r[p];
--r[k + 1];
}
}
}
void Kolory()
{
int n;
Wczytaj(n);
Licz(n);
Wyn(n);
}
int main ()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
Kolory();
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 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | #include <bits/stdc++.h> using namespace std; const int N = 1000 * 1000 + 7; int r[N], y[N], b[N]; void Licz(int n) { int il, i; il = 0; for(i = 1; i <= n; ++i) { il += r[i]; r[i] = il; } il = 0; for(i = 1; i <= n; ++i) { il += b[i]; b[i] = il; } il = 0; for(i = 1; i <= n; ++i) { il += y[i]; y[i] = il; } } void Wyn(int n) { int w, i; w = 0; for(i = 1; i <= n; ++i) { //cout << y[i] << " " << b[i] << " " << r[i] << "\n"; if(r[i] < 1 && y[i] >= 1 && b[i] >= 1) ++w; } cout << w << "\n"; } void Wczytaj(int &n) { int m, i, p, k, x; cin >> n >> m; for(i = 1; i <= m; ++i) { cin >> p >> k >> x; if(x == 1) { ++y[p]; --y[k + 1]; } if(x == 2) { ++b[p]; --b[k + 1]; } if(x == 3) { ++r[p]; --r[k + 1]; } } } void Kolory() { int n; Wczytaj(n); Licz(n); Wyn(n); } int main () { ios_base::sync_with_stdio(false); cin.tie(nullptr); Kolory(); return 0; } |
English