181352025-10-01 22:22:56algoproMekk Mester munkái (50 pont)cpp17Accepted 50/5089ms3440 KiB
// UUID: 95585578-864f-4865-9d2f-45723df7c589
#include <bits/stdc++.h>
using namespace std;

struct rendel
{
	int kezd;
	int veg;
	int index;
};

int main() {
	int n, h;
    cin >> n >> h;

	vector <rendel>  orders(n+1);
	vector <rendel> og(n+1);
	orders[0].veg=0;
	for (int i=1; i<=n; i++) {
		cin >> orders[i].kezd >> orders[i].veg;
		orders[i].index=i;
	}

	og=orders;

	sort (orders.begin(), orders.end(), [] (const rendel& a, const rendel& b){
		return a.veg<b.veg;		
	});

	vector <int> mester; vector <int> fia;
	mester.push_back(0); fia.push_back(0);
	int mester_u=0, fia_u=0;

	for (int i=1; i<=n; i++) {
		bool mester_s=orders[i].kezd>orders[mester_u].veg; 
		bool fia_s=orders[i].kezd>orders[fia_u].veg;

		if (mester_s==1 && fia_s==1) {
			if (orders[mester_u].veg>orders[fia_u].veg) {
				mester.push_back(orders[i].index);				
				mester_u=i;
			}
			else {
				fia.push_back(orders[i].index);
				fia_u=i;
			}
		}
		else {

			if (mester_s==1) {
				mester.push_back(orders[i].index);
				//cout << orders[i].kezd << " " << orders[mester_u].veg << "\n";
				mester_u=i;
			}
			else if (fia_s==1) {
				fia.push_back(orders[i].index);
				fia_u=i;		
			}
		}
	}

	cout << mester.size()-1 << " " << fia.size()-1 << "\n";
	sort(mester.begin()+1, mester.end(), [&] (const int& a, const int& b) {
		return og[a].kezd<og[b].kezd;
	});

	sort(fia.begin()+1, fia.end(), [&] (const int& a, const int& b) {
		return og[a].kezd<og[b].kezd;
	});

	for (int i=1; i<mester.size(); i++) {
		cout << mester[i] << " ";
	}
	cout << "\n";
	for (int i=1; i<fia.size(); i++) {
		cout << fia[i] << " ";
	}
	cout << "\n";
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms500 KiB
2Accepted0/08ms564 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms316 KiB
7Accepted2/21ms508 KiB
8Accepted2/21ms316 KiB
9Accepted3/31ms316 KiB
10Accepted1/12ms540 KiB
11Accepted1/12ms316 KiB
12Accepted2/22ms344 KiB
13Accepted2/22ms320 KiB
14Accepted2/22ms316 KiB
15Accepted2/22ms316 KiB
16Accepted3/32ms316 KiB
17Accepted2/278ms2756 KiB
18Accepted2/278ms2752 KiB
19Accepted4/479ms2756 KiB
20Accepted4/479ms2612 KiB
21Accepted4/479ms2764 KiB
22Accepted4/482ms2756 KiB
23Accepted4/489ms3440 KiB