Submission #1337061

#TimeUsernameProblemLanguageResultExecution timeMemory
1337061vtnooDodatna (COCI25_dodatna)C++20
0 / 70
1 ms580 KiB
#include <bits/stdc++.h>
#define V vector
#define L(i,j,k) for(int i=(j);i<=(k);i++)
#define R(i,j,k) for(int i=(j);i>=(k);i--)
#define all(x) x.begin(),x.end()
#define sz(a) ((int)a.size())
#define pb push_back
using namespace std;
typedef long long ll;

using ii=pair<ll,ll>;

int main(){
	int n,k;cin>>n>>k;
	V<ii>s(n),h;
	L(i,0,n-1){
		cin>>s[i].first>>s[i].second;
		h.pb({s[i].first,0});
		h.pb({s[i].second,-1});
	}
	sort(all(h));
	ll last=0;
	map<ll,ll>pf;
	L(i,0,sz(h)-1){
		pf[h[i].first]=pf[last];
		if(h[i].second==-1){
			pf[h[i].first]--;
		}else pf[h[i].first]++;
		last=h[i].first;
	}	
	ll ans=0;
	L(i,0,n-1){
		ll K=min(pf[s[i].first],pf[s[i].second]);
		if(K>=k){
			//~ cout<<K<<endl;
			//~ cout<<s[i].first<<" "<<s[i].second<<endl;
			ans=max(ans,s[i].second-s[i].first-1);
		}
	}
	cout<<ans<<endl;
}
#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...