216672026-01-13 17:55:12algoproÁruszállítás üres szakaszaicpp17Hibás válasz 2/5081ms1148 KiB
// UUID: a5ef32da-f6ee-4057-ba75-a15b75dc2a36
#include <bits/stdc++.h>
using namespace std;

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

	vector<pair<int, int>> inters(m);

	for (int i = 0; i < m; i++) cin >> inters[i].first >> inters[i].second;

	sort(inters.begin(), inters.end());

	long long nemures = 0;
	int mostkezd = inters[0].first;
	int mostveg = inters[0].second;

	for(int i = 1; i < m; i++) {
		int kezd = inters[i].first;
		int veg = inters[i].second;

		if (kezd <= mostveg) mostveg = max(mostveg, veg);
		else {
			nemures += mostveg - mostkezd;
			mostkezd = kezd;
			mostveg = veg;
		}
	}

	nemures += mostveg - mostkezd;

	long long total = (long long)n - 1;
	long long ures = total - nemures;

	cout << ures;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base2/50
1Hibás válasz0/01ms316 KiB
2Hibás válasz0/081ms1076 KiB
3Hibás válasz0/21ms332 KiB
4Elfogadva2/21ms316 KiB
5Hibás válasz0/21ms316 KiB
6Hibás válasz0/21ms316 KiB
7Hibás válasz0/21ms316 KiB
8Hibás válasz0/21ms316 KiB
9Hibás válasz0/21ms316 KiB
10Hibás válasz0/21ms316 KiB
11Hibás válasz0/22ms384 KiB
12Hibás válasz0/21ms316 KiB
13Hibás válasz0/34ms440 KiB
14Hibás válasz0/37ms316 KiB
15Hibás válasz0/34ms316 KiB
16Hibás válasz0/364ms1040 KiB
17Hibás válasz0/365ms820 KiB
18Hibás válasz0/375ms1148 KiB
19Hibás válasz0/37ms512 KiB
20Hibás válasz0/38ms316 KiB
21Hibás válasz0/374ms1076 KiB
22Hibás válasz0/375ms1144 KiB