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
#include <iostream>

#include <vector>
#include <stdio.h>

using namespace std;

const int MaxVector = 2000000;

int main()
{
    ios_base::sync_with_stdio(false); // wylaczamy synchronizacje strumieni (patrz ponizej)
    cin.tie(0);

    vector <int> samochodyPion(MaxVector,0);
    vector <int> samochodyPoziom(MaxVector,0);

    int iloscSamochodow;

    fscanf(stdin, "%d\n", &iloscSamochodow);
    //cin >> iloscSamochodow;

    int typ, wierszKolumna, chwila;

    for (int i = 0; i < iloscSamochodow; i++) {
        fscanf(stdin, "%d %d %d\n", &typ, &wierszKolumna, &chwila);
        //cin >> typ >> wierszKolumna >> chwila;
        if (typ == 1)
            samochodyPion[1000000 + wierszKolumna - chwila - 1]++;
        else
            samochodyPoziom[1000000 + wierszKolumna - chwila - 1]++;
    };

    int iloscOdwolan = 0;

    for (int i = 0; i < MaxVector; i++) {
        if (samochodyPion[i] != 0 && samochodyPoziom[i] != 0) {
            if (samochodyPion[i] > samochodyPoziom[i])
                iloscOdwolan += samochodyPoziom[i];
            else
                iloscOdwolan += samochodyPion[i];
        };
    };
    cout << iloscOdwolan;

    return 0;
}