107962024-04-14 11:34:39AblablablaFőnökszámpypy3Futási hiba 0/10074ms91608 KiB
#include <bits/stdc++.h>

using namespace std;

const int MAXN = 2e5 + 5;

int akt = 0;
set<int> a;
multiset<int> b[MAXN];

void torol(int x, int y){
    auto it = a.lower_bound(x);
    while(it != a.begin()){
        it--;
        int ert = *it;
        auto itB = b[ert].begin();
        while(itB != b[ert].end() && *itB <= y){
            akt--;
            itB = b[ert].erase(itB);
        }

        if(b[ert].empty()){
            a.erase(ert);
            it = a.lower_bound(x);
        } else{
            break;
        }
    }
}

void beszur(int x, int y){
    akt++;
    a.insert(x);
    b[x].insert(y);
}

void berak(int x, int y){
    auto it = a.upper_bound(x);
    if(it == a.end()){
        beszur(x, y);
    } else{
        int ert = *it;
        if(*b[ert].rbegin() <= y){
            beszur(x, y);
        }
    }
}

int main()
{
    int n;
    cin >> n;

    vector<int> alapA(n), alapB(n), nyom(n);
    for(int i = 0; i < n; i++){
        cin >> alapA[i] >> alapB[i];

        nyom[i] = alapA[i];
    }

    sort(nyom.begin(), nyom.end());
    nyom.erase(unique(nyom.begin(), nyom.end()), nyom.end());

    for(int &x : alapA){
        x = lower_bound(nyom.begin(), nyom.end(), x) - nyom.begin();
    }


    for(int i = 0; i < n; i++){
        torol(alapA[i], alapB[i]);
        berak(alapA[i], alapB[i]);
        cout << akt << "\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Futási hiba65ms87156 KiB
2Futási hiba64ms87252 KiB
subtask20/5
3Futási hiba64ms87624 KiB
4Futási hiba64ms87896 KiB
5Futási hiba64ms88008 KiB
6Futási hiba64ms88200 KiB
subtask30/10
7Futási hiba64ms88352 KiB
8Futási hiba74ms88672 KiB
9Futási hiba68ms88780 KiB
10Futási hiba64ms88852 KiB
11Futási hiba64ms88720 KiB
12Futási hiba64ms88516 KiB
13Futási hiba64ms88636 KiB
14Futási hiba74ms88992 KiB
subtask40/10
15Futási hiba68ms88968 KiB
16Futási hiba64ms89332 KiB
17Futási hiba64ms89412 KiB
18Futási hiba64ms89388 KiB
19Futási hiba64ms89196 KiB
20Futási hiba64ms89492 KiB
21Futási hiba64ms89724 KiB
22Futási hiba64ms89864 KiB
subtask50/25
23Futási hiba64ms89504 KiB
24Futási hiba64ms90000 KiB
25Futási hiba64ms90132 KiB
26Futási hiba64ms89732 KiB
27Futási hiba64ms90024 KiB
28Futási hiba64ms90060 KiB
29Futási hiba64ms89796 KiB
30Futási hiba64ms90144 KiB
subtask60/50
31Futási hiba72ms90352 KiB
32Futási hiba72ms90548 KiB
33Futási hiba64ms87624 KiB
34Futási hiba64ms87896 KiB
35Futási hiba64ms88008 KiB
36Futási hiba64ms88200 KiB
37Futási hiba64ms88352 KiB
38Futási hiba74ms88672 KiB
39Futási hiba68ms88780 KiB
40Futási hiba64ms88852 KiB
41Futási hiba64ms88720 KiB
42Futási hiba64ms88516 KiB
43Futási hiba64ms88636 KiB
44Futási hiba74ms88992 KiB
45Futási hiba68ms88968 KiB
46Futási hiba64ms89332 KiB
47Futási hiba64ms89412 KiB
48Futási hiba64ms89388 KiB
49Futási hiba64ms89196 KiB
50Futási hiba64ms89492 KiB
51Futási hiba64ms89724 KiB
52Futási hiba64ms89864 KiB
53Futási hiba64ms89504 KiB
54Futási hiba64ms90000 KiB
55Futási hiba64ms90132 KiB
56Futási hiba64ms89732 KiB
57Futási hiba64ms90024 KiB
58Futási hiba64ms90060 KiB
59Futási hiba64ms89796 KiB
60Futási hiba64ms90144 KiB
61Futási hiba70ms90256 KiB
62Futási hiba74ms90212 KiB
63Futási hiba74ms90672 KiB
64Futási hiba74ms91100 KiB
65Futási hiba68ms91264 KiB
66Futási hiba72ms91076 KiB
67Futási hiba74ms91136 KiB
68Futási hiba72ms91608 KiB
69Futási hiba72ms91296 KiB
70Futási hiba68ms91288 KiB