8822 2024. 01. 31 16:47:09 Tina0731 Mekk Mester munkái (50 pont) cpp14 Elfogadva 50/50 93ms 9256 KiB
#include <iostream>
#include <bits/stdc++.h>

using namespace std;

typedef struct {
    int k, v, index;
}Intervallum;

bool Rendez(Intervallum i1, Intervallum i2)
{
    return i1.v<i2.v;
}

int main()
{

    int n, napok;
    cin>>n>>napok;
    vector<Intervallum> munka (n);
    Intervallum uj;
    for(int i=0;i<n;i++)
    {
        cin>>uj.k>>uj.v;
        uj.index=i+1;
        munka.at(i)=uj;
    }

    sort(munka.begin(),munka.end(),Rendez);

    /*cout<<endl;
    for(Intervallum x : munka)
        cout<<x.k<<" "<<x.v<<" "<<x.index<<endl;*/

    int mekvege=0, fiavege=0;
    int mekdb=0, fiadb=0;
    vector<Intervallum> mek;
    vector<Intervallum> fia;
    for(int i=0;i<n;i++)
    {
        if(mekvege<munka.at(i).k && fiavege<munka.at(i).k)
        {
            if(mekvege>fiavege)
            {
                mekvege=munka.at(i).v;
                mekdb++;
                mek.push_back(munka.at(i));
            }
            else
            {
                fiavege=munka.at(i).v;
                fiadb++;
                fia.push_back(munka.at(i));

            }
        }
        else if(mekvege<munka.at(i).k)
        {
            mekvege=munka.at(i).v;
            mekdb++;
            mek.push_back(munka.at(i));
        }
        else if(fiavege<munka.at(i).k)
        {
            fiavege=munka.at(i).v;
            fiadb++;
            fia.push_back(munka.at(i));
        }

    }

    //sort(mek.begin(),mek.end());
    //sort(fia.begin(),fia.end());
    cout<<mekdb<<" "<<fiadb<<endl;
    for(Intervallum x : mek)
        cout<<x.index<<" ";
    cout<<endl;
    for(Intervallum x : fia)
        cout<<x.index<<" ";

    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 3ms 1812 KiB
2 Elfogadva 0/0 9ms 2252 KiB
3 Elfogadva 1/1 3ms 2220 KiB
4 Elfogadva 1/1 3ms 2300 KiB
5 Elfogadva 2/2 3ms 2296 KiB
6 Elfogadva 2/2 3ms 2552 KiB
7 Elfogadva 2/2 3ms 2788 KiB
8 Elfogadva 2/2 3ms 3004 KiB
9 Elfogadva 3/3 3ms 3000 KiB
10 Elfogadva 1/1 3ms 3224 KiB
11 Elfogadva 1/1 3ms 3328 KiB
12 Elfogadva 2/2 3ms 3436 KiB
13 Elfogadva 2/2 3ms 3528 KiB
14 Elfogadva 2/2 3ms 3656 KiB
15 Elfogadva 2/2 4ms 3876 KiB
16 Elfogadva 3/3 3ms 3960 KiB
17 Elfogadva 2/2 83ms 6540 KiB
18 Elfogadva 2/2 83ms 6576 KiB
19 Elfogadva 4/4 83ms 6472 KiB
20 Elfogadva 4/4 85ms 6536 KiB
21 Elfogadva 4/4 85ms 6896 KiB
22 Elfogadva 4/4 86ms 7368 KiB
23 Elfogadva 4/4 93ms 9256 KiB