107482024-04-11 07:27:41zsebiFőnökszámcpp14Időlimit túllépés 5/100500ms16728 KiB
#include <iostream>
#include <queue>
#include <map>
#include <set>
#define ll long long
using namespace std;
struct alk
{
    ll els, mas;
};
priority_queue<alk>que;
bool operator<(const alk a, const alk b)
{
    if (a.els > b.els)return true;
    else if (a.els == b.els && a.mas > b.mas)return true;
    return false;
}
struct alk2
{
    ll els, mas;
};
/*priority_queue<alk2>que2;
bool operator<(const alk2 a, const alk2 b)
{
    if (a.els < b.els)return true;
    else if (a.els == b.els && a.mas < b.mas)return true;
    return false;
}*/
map<ll,set<ll> >mp;
int main() {
    ll n;
    cin >> n;
    for (int i = 1; i <= n; ++i) {
        ll a, b;
        cin >> a >> b;
       /* if (!que2.empty() && (que2.top().els <= a || que2.top().mas <= b))
        {
            que2.push({ a, b });
            que.push({ a,b });
        }
        if (que2.empty())
        {
            que2.push({ a,b });
            que.push({ a,b });
        }*/
        bool ok = false;
        mp[a].insert(b);
        for (auto& e : mp)
        {
            if (e.first > a)
            {
               auto it= e.second.upper_bound(b);
               if (it != e.second.end())
               {
                   ok = true;
                   break;
               }
            }
        }
        if (!ok)
        {
            que.push({ a,b });
            while (!que.empty() && a > que.top().els && b > que.top().mas) {
                que.pop();
            }
        }


        cout << que.size() << "\n";
    }
    return 0;
}

RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva3ms1880 KiB
2Időlimit túllépés500ms2640 KiB
subtask25/5
3Elfogadva3ms2268 KiB
4Elfogadva3ms2492 KiB
5Elfogadva7ms2924 KiB
6Elfogadva319ms4712 KiB
subtask30/10
7Elfogadva3ms3108 KiB
8Elfogadva3ms3212 KiB
9Elfogadva3ms3456 KiB
10Elfogadva3ms3532 KiB
11Hibás válasz4ms3664 KiB
12Hibás válasz8ms3928 KiB
13Hibás válasz41ms4560 KiB
14Hibás válasz108ms5312 KiB
subtask40/10
15Elfogadva3ms3872 KiB
16Elfogadva3ms3996 KiB
17Elfogadva4ms4128 KiB
18Elfogadva17ms4520 KiB
19Elfogadva85ms5480 KiB
20Időlimit túllépés449ms4680 KiB
21Időlimit túllépés474ms4740 KiB
22Elfogadva273ms16728 KiB
subtask50/25
23Hibás válasz4ms4448 KiB
24Hibás válasz8ms4784 KiB
25Hibás válasz41ms5660 KiB
26Hibás válasz109ms6156 KiB
27Időlimit túllépés428ms5244 KiB
28Időlimit túllépés462ms5364 KiB
29Időlimit túllépés465ms5316 KiB
30Időlimit túllépés474ms5504 KiB
subtask60/50
31Elfogadva3ms5148 KiB
32Időlimit túllépés500ms5708 KiB
33Elfogadva3ms2268 KiB
34Elfogadva3ms2492 KiB
35Elfogadva7ms2924 KiB
36Elfogadva319ms4712 KiB
37Elfogadva3ms3108 KiB
38Elfogadva3ms3212 KiB
39Elfogadva3ms3456 KiB
40Elfogadva3ms3532 KiB
41Hibás válasz4ms3664 KiB
42Hibás válasz8ms3928 KiB
43Hibás válasz41ms4560 KiB
44Hibás válasz108ms5312 KiB
45Elfogadva3ms3872 KiB
46Elfogadva3ms3996 KiB
47Elfogadva4ms4128 KiB
48Elfogadva17ms4520 KiB
49Elfogadva85ms5480 KiB
50Időlimit túllépés449ms4680 KiB
51Időlimit túllépés474ms4740 KiB
52Elfogadva273ms16728 KiB
53Hibás válasz4ms4448 KiB
54Hibás válasz8ms4784 KiB
55Hibás válasz41ms5660 KiB
56Hibás válasz109ms6156 KiB
57Időlimit túllépés428ms5244 KiB
58Időlimit túllépés462ms5364 KiB
59Időlimit túllépés465ms5316 KiB
60Időlimit túllépés474ms5504 KiB
61Hibás válasz39ms5740 KiB
62Hibás válasz46ms5964 KiB
63Hibás válasz39ms5784 KiB
64Elfogadva130ms11320 KiB
65Hibás válasz39ms5680 KiB
66Hibás válasz39ms5652 KiB
67Hibás válasz41ms5808 KiB
68Hibás válasz39ms5652 KiB
69Időlimit túllépés474ms6632 KiB
70Időlimit túllépés465ms5844 KiB