Submission #1328782

#TimeUsernameProblemLanguageResultExecution timeMemory
1328782model_codeDodatna (COCI25_dodatna)C++20
70 / 70
222 ms21424 KiB
#include <bits/stdc++.h>
using namespace std;

typedef pair<int,int> ii;
typedef vector<ii> vii;

#define PB push_back
#define X first
#define Y second
#define all(x) (x).begin(), (x).end()

const int MAXN = 3e5 + 7;

int n, k;
vii ev;
multiset<int> s;
int le[MAXN], ri[MAXN];

void solve(){
	cin >> n >> k;
	for(int i=1; i<=n; i++){
		cin >> le[i] >> ri[i];
		ev.PB({le[i], i});
		ev.PB({ri[i], -i});
	}
	sort(all(ev));
	
	int ans = 0;
	for(auto &x : ev){
		if(x.Y > 0){
			s.insert(ri[x.Y]);
			if((int)s.size() > k) s.erase(s.begin());
		}else if(*s.begin() == x.X) s.erase(s.begin());
		
		if((int)s.size() == k) ans = max(ans, *s.begin() - x.X);
	}
	cout << ans << "\n";
}

int main(){
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);
	solve();
	return 0;
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...