97392024-03-05 09:30:09phiterrA lehető legkevesebb átszállás (50 pont)cpp17Elfogadva 50/5010ms6520 KiB
#include <iostream>
#include <vector>
using namespace std;

int main()
{
	int linesNum = 0;
	int stationsNum = 0;
	cin >> linesNum;
	cin >> stationsNum;
	vector<pair<int, int>> stations(stationsNum, { 0,0 });
	for (int i = 0; i < linesNum; i++) {
		int start = 0;
		int end = 0;
		cin >> start >> end;
		for (int j = start - 1; j < end -1; j++) {
			if (stations[j].second < end) {
				stations[j] = pair<int, int>(i, end - 1);

			}
			else break;
		}

	}
	vector<int> takenLines(0, 0);
	for (int i = 0; i + 1 < stationsNum; i) {
		if (stations[i] == pair<int, int>(0, 0)) {
			
				cout << -1;
				return 0;
			
		}else {
			takenLines.push_back(stations[i].first);
			i = stations[i].second;
		}
	}
	cout << takenLines.size() - 1 << endl;
		for (int i : takenLines) {
			cout << i + 1 << ' ';
		}
	return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/03ms1964 KiB
2Elfogadva0/010ms3612 KiB
3Elfogadva1/13ms2380 KiB
4Elfogadva1/13ms2440 KiB
5Elfogadva2/23ms2656 KiB
6Elfogadva2/22ms2740 KiB
7Elfogadva2/23ms2900 KiB
8Elfogadva2/24ms2928 KiB
9Elfogadva2/24ms3092 KiB
10Elfogadva2/24ms3312 KiB
11Elfogadva2/26ms3424 KiB
12Elfogadva2/26ms3604 KiB
13Elfogadva2/23ms3676 KiB
14Elfogadva2/24ms3784 KiB
15Elfogadva2/24ms4604 KiB
16Elfogadva2/27ms4516 KiB
17Elfogadva2/28ms5140 KiB
18Elfogadva2/28ms5388 KiB
19Elfogadva2/29ms5504 KiB
20Elfogadva2/29ms5776 KiB
21Elfogadva2/210ms5728 KiB
22Elfogadva2/210ms5848 KiB
23Elfogadva2/29ms5444 KiB
24Elfogadva2/29ms5812 KiB
25Elfogadva2/210ms6056 KiB
26Elfogadva2/210ms6168 KiB
27Elfogadva2/210ms6404 KiB
28Elfogadva2/210ms6520 KiB