215122026-01-13 11:03:53algoproÁruszállítás üres szakaszaicpp17Elfogadva 50/5096ms8172 KiB
// UUID: 131cf897-056b-492b-9473-40764dda306f
#include <bits/stdc++.h>
using namespace std;

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


	vector<int> diffs(n+1, 0);
	for (int i=0;i<m;i++){
		int start, end;
		cin >> start >> end;
		diffs[start]++;
		diffs[end]--;
	}

	// for(int d:diffs){
	// 	cout << d << " ";
	// }
	// cout << "\n";

	if(n==1){
		cout << (diffs[1] == 0 ? 1 : 0);
		return 0;
	}

	vector<int> totals(n+1, 0);
	
	totals[1] = diffs[1];
	
	for(int i=2;i<=n;i++){
		totals[i] = totals[i-1] + diffs[i];
	}
	// for(int t:totals){
	// 	cout << t << " ";
	// }
	// cout << "\n";

	int empty_section_count = 0;

	int previous;
	int current = totals[0];
	for(int i=1;i<=n;i++){
		previous = current;
		current = totals[i];

		if(previous == 0 && current ==0){
			continue;
		}else if(previous == 0 && current != 0){
			continue;
		}else if(previous != 0 && current == 0){
			// cout << "i = " << i << ", previous = " << previous << ", current = " << current << "\n";
			empty_section_count++;
		}else{  // previous != 0 && current != 0
			continue;
		}



	}
	// cout << empty_section_count;



	// for(int i=0;i<=n;i++){
	// 	if (totals[i]==0){
	// 		empty_section_count++;
	// 		while(i<n && totals[i]==0){
	// 			i++;
	// 		}
	// 	}
	// }

	// corrections at edges:
	// cout << "zero runs count before corrections: "  << empty_section_count << "\n";

	if (totals[1] == 0){
		// cout << "fixing at start" << "\n";
		empty_section_count++;
	}
	if(totals[n] == 0 && totals[n-1]!=0){
		// cout << "fixing at end" << "\n";
		empty_section_count--;
	}

	cout << empty_section_count;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/02ms316 KiB
2Elfogadva0/096ms7988 KiB
3Elfogadva2/22ms316 KiB
4Elfogadva2/22ms324 KiB
5Elfogadva2/21ms332 KiB
6Elfogadva2/21ms408 KiB
7Elfogadva2/21ms360 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/21ms316 KiB
10Elfogadva2/21ms508 KiB
11Elfogadva2/22ms824 KiB
12Elfogadva2/22ms1048 KiB
13Elfogadva3/34ms1076 KiB
14Elfogadva3/38ms1636 KiB
15Elfogadva3/36ms1844 KiB
16Elfogadva3/364ms8168 KiB
17Elfogadva3/368ms7988 KiB
18Elfogadva3/375ms8160 KiB
19Elfogadva3/310ms3384 KiB
20Elfogadva3/312ms4148 KiB
21Elfogadva3/378ms8168 KiB
22Elfogadva3/379ms8172 KiB