136942025-01-08 12:48:33gyjazminMekk Mester munkái (50 pont)cpp17Elfogadva 50/5089ms2272 KiB
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int n, h;
    cin >> n >> h;
    vector<pair<pair<int, int>, int>> v(n);
    for (int i = 0; i < n; i++) {
        int e, m;
        cin >> e >> m;
        v[i].first.first = m;
        v[i].first.second = e;
        v[i].second = i+1;
    }
    sort(v.begin(), v.end());
    vector<int> mekk;
    vector<int> fia;
    int ja = 0;
    int jf = 0;
    int cv = 0;
    while (cv<n) {
        if (ja > jf) {
            if (v[cv].first.second > ja) {
                mekk.push_back(v[cv].second);
                ja = v[cv].first.first;
            }
            else if (v[cv].first.second > jf) {
                fia.push_back(v[cv].second);
                jf = v[cv].first.first;
            }
            cv++;
        }
        else {
            if (v[cv].first.second > jf) {
                fia.push_back(v[cv].second);
                jf = v[cv].first.first;
            }
            else if (v[cv].first.second > ja) {
                mekk.push_back(v[cv].second);
                ja = v[cv].first.first;
            }
            cv++;
        }
    }    
    cout << mekk.size() << " " << fia.size() << endl;
    for (int x : mekk) cout << x << " ";
    cout << endl;
    for (int x : fia) cout << x << " ";
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/08ms316 KiB
3Elfogadva1/11ms316 KiB
4Elfogadva1/11ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms508 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva3/31ms388 KiB
10Elfogadva1/12ms316 KiB
11Elfogadva1/12ms316 KiB
12Elfogadva2/22ms316 KiB
13Elfogadva2/22ms316 KiB
14Elfogadva2/22ms328 KiB
15Elfogadva2/22ms508 KiB
16Elfogadva3/32ms500 KiB
17Elfogadva2/279ms1584 KiB
18Elfogadva2/279ms1580 KiB
19Elfogadva4/479ms1580 KiB
20Elfogadva4/479ms1580 KiB
21Elfogadva4/479ms1584 KiB
22Elfogadva4/482ms1588 KiB
23Elfogadva4/489ms2272 KiB