226622026-01-15 13:51:14SpoonMekk Mester munkái (50 pont)cpp17Elfogadva 50/5089ms2720 KiB
#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

struct Munka {
    int k;
    int v;
    int index;
};

int n, h;
vector<Munka> munkak;
vector<Munka> mesterMunkak;
vector<Munka> fiuMunkak;

bool Compare1(const Munka& a, const Munka& b) {
    return a.v < b.v;
}

void Beolvas() {
    cin >> n >> h;
    munkak.resize(n + 1);
    for (int i = 1; i <= n; i++) {
        cin >> munkak[i].k >> munkak[i].v;
        munkak[i].index = i;
    }
}

void Kiir() {
    cout << mesterMunkak.size() << ' ' << fiuMunkak.size() << '\n';
    for (auto x : mesterMunkak) {
        cout << x.index << ' ';
    }
    cout << '\n';
    for (auto x : fiuMunkak) {
        cout << x.index << ' ';
    }
}

void Feladat() {
    int mesterFoglalt = 0;
    int fiuFoglalt = 0;
    for (int i = 1; i <= n; i++) {
        if (mesterFoglalt > fiuFoglalt) {
            if (mesterFoglalt < munkak[i].k) {
                mesterMunkak.push_back(munkak[i]);
                mesterFoglalt = munkak[i].v;
            }
            else if (fiuFoglalt < munkak[i].k) {
                fiuMunkak.push_back(munkak[i]);
                fiuFoglalt = munkak[i].v;
            }
        }
        else {
            if (fiuFoglalt < munkak[i].k) {
                fiuMunkak.push_back(munkak[i]);
                fiuFoglalt = munkak[i].v;
            }
            else if (mesterFoglalt < munkak[i].k) {
                mesterMunkak.push_back(munkak[i]);
                mesterFoglalt = munkak[i].v;
            }
        }
    }
}

int main() {
    Beolvas();
    sort(munkak.begin(), munkak.end(), Compare1);
    Feladat();
    Kiir();
    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms500 KiB
2Elfogadva0/08ms508 KiB
3Elfogadva1/11ms316 KiB
4Elfogadva1/11ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms508 KiB
7Elfogadva2/21ms508 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/32ms316 KiB
10Elfogadva1/12ms316 KiB
11Elfogadva1/11ms508 KiB
12Elfogadva2/22ms508 KiB
13Elfogadva2/22ms548 KiB
14Elfogadva2/22ms508 KiB
15Elfogadva2/22ms352 KiB
16Elfogadva3/32ms508 KiB
17Elfogadva2/279ms1580 KiB
18Elfogadva2/279ms1584 KiB
19Elfogadva4/479ms1584 KiB
20Elfogadva4/481ms1588 KiB
21Elfogadva4/482ms1588 KiB
22Elfogadva4/482ms1844 KiB
23Elfogadva4/489ms2720 KiB