1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#include <cstdio>
#include <vector>
#include <algorithm>
using namespace std;

int main() {
	int i, j, n, r, w, t;
	scanf("%d", &n);
	vector<vector<int>> v(2, vector<int>(2000002, 0));
	for (int i = 0; i < n; ++i) { // zliczamy sytuacje gdy w1 + t2 == w2 + t1, czyli w1 - t1 == w2 - t2
		scanf("%d%d%d", &r, &w, &t);
		v[r - 1][w - t + 1000000]++;
	}
	int sum = 0;
	for (int i = 0; i < 2000002; ++i)
		sum += max(v[0][i], v[1][i]); // dla kazdej chwili moga byc wybrane tylko jednego lub drugiego typu
	printf("%d", n - sum);
	return 0;
}