84272024-01-16 07:06:48BenedekMartonMekk Mester munkái (50 pont)cpp17Hibás válasz 7/5094ms7852 KiB
#include <iostream>
//#include <queue>
#include <algorithm>

using namespace std;

struct kv
{
    int k;
    int v;
    int ind;
};

bool f(kv a, kv b)
{
    if(a.v==b.v)
    {
        return a.k<b.k;
    }
    return a.v<b.v;
}

int main()
{
    int n, h;
    cin >> n >> h;
    kv mun[n];
    for(int i=0; i<n; i++)
    {
        cin >> mun[i].k >> mun[i].v;
        mun[i].ind=i+1;
    }
    //queue<int> q1, q2;
    sort(mun, mun+n, f);
    int uccso1=0, uccso2=0, sz1=0, sz2=0, muel[n];
    for(int i=0; i<n; i++)
    {
        if(uccso1<mun[i].k)
        {
            muel[i]=1;
            uccso1=mun[i].v;
            sz1++;
        }
        else if(uccso2<mun[i].k)
        {
            muel[i]=2;
            uccso2=mun[i].v;
            sz2++;
        }
        else
        {
            muel[i]=0;
        }
    }
    cout << sz1 << " " << sz2 << endl;
    for(int i=0; i<n; i++)
    {
        if(muel[i]==1)
        {
            cout << mun[i].ind << " ";
        }
    }
    cout << endl;
    for(int i=0; i<n; i++)
    {
        if(muel[i]==2)
        {
            cout << mun[i].ind << " ";
        }
    }
    cout << endl;
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base7/50
1Elfogadva0/03ms1872 KiB
2Hibás válasz0/09ms2352 KiB
3Elfogadva1/13ms2292 KiB
4Elfogadva1/13ms2520 KiB
5Hibás válasz0/23ms2612 KiB
6Hibás válasz0/23ms2856 KiB
7Elfogadva2/23ms3140 KiB
8Hibás válasz0/23ms3104 KiB
9Elfogadva3/33ms3116 KiB
10Hibás válasz0/13ms3372 KiB
11Hibás válasz0/13ms3536 KiB
12Hibás válasz0/23ms3612 KiB
13Hibás válasz0/24ms3744 KiB
14Hibás válasz0/23ms3952 KiB
15Hibás válasz0/24ms4164 KiB
16Hibás válasz0/33ms4272 KiB
17Hibás válasz0/283ms7736 KiB
18Hibás válasz0/282ms7628 KiB
19Hibás válasz0/483ms7716 KiB
20Hibás válasz0/483ms7712 KiB
21Hibás válasz0/485ms7620 KiB
22Hibás válasz0/486ms7848 KiB
23Hibás válasz0/494ms7852 KiB