181312025-10-01 21:30:53algoproMekk Mester munkái (50 pont)cpp17Wrong answer 7/5085ms2216 KiB
// UUID: 09650136-474c-497f-ad73-416b0fd139a1
#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);
	orders[0].veg=0;
	for (int i=1; i<=n; i++) {
		cin >> orders[i].kezd >> orders[i].veg;
		orders[i].index=i;
	}

	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++) {
		if (orders[i].kezd>orders[mester_u].veg) {
			mester.push_back(orders[i].index);
			mester_u=i;
		}
		else if (orders[i].kezd>orders[fia_u].veg) {
			//cout << orders[i].index << " " << orders[fia_u].index << "\n";
			fia.push_back(orders[i].index);
			fia_u=i;		
		}
	}

	cout << mester.size()-1 << " " << fia.size()-1 << "\n";
	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";
	/*for (int i=1; i<=n; i++) {
		cout << orders[i].kezd << " " << orders[i].veg << " " << orders[i].index << "\n";
	}*/
}
SubtaskSumTestVerdictTimeMemory
base7/50
1Accepted0/01ms316 KiB
2Wrong answer0/08ms316 KiB
3Accepted1/11ms316 KiB
4Accepted1/11ms316 KiB
5Wrong answer0/21ms316 KiB
6Wrong answer0/21ms316 KiB
7Accepted2/21ms316 KiB
8Wrong answer0/21ms316 KiB
9Accepted3/31ms316 KiB
10Wrong answer0/12ms316 KiB
11Wrong answer0/12ms316 KiB
12Wrong answer0/22ms316 KiB
13Wrong answer0/22ms320 KiB
14Wrong answer0/22ms508 KiB
15Wrong answer0/22ms316 KiB
16Wrong answer0/32ms508 KiB
17Wrong answer0/276ms1584 KiB
18Wrong answer0/278ms1588 KiB
19Wrong answer0/476ms1580 KiB
20Wrong answer0/476ms1592 KiB
21Wrong answer0/476ms1588 KiB
22Wrong answer0/479ms1580 KiB
23Wrong answer0/485ms2216 KiB