204052026-01-06 17:47:50algoproTV szolgáltatókcpp17Időlimit túllépés 1/401s2144 KiB
// UUID: 2ecb033a-3e45-4393-b73a-e33eac1027ab
#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pll pair<ll,ll>

ll n,k;
vector<pll>tv;

ll cost(ll pos){
	ll sum=0;
	for(int i=0;i<n;i++){
		sum+=(max(tv[i].first-pos,0LL)+max(pos+k-1-tv[i].second,0LL));
	}
	return sum;
}

int main() {
	cin>>n>>k;
	tv.resize(n);
	for(int i=0;i<n;i++){
		cin>>tv[i].first>>tv[i].second;
	}
	ll l=1,r=1e9;
	//cout<<cost(5)<<' '<<l;
	//return 0;
	while(l!=r-1){
		ll m=(l+r)/2;
		ll c=cost(m);
		ll c1=cost(m-1),c2=cost(m+1);
		if(c2<=c)l=m;
		if(c1<=c)r=m;
	}
	cout<<cost(l);
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base1/40
1Elfogadva0/01ms316 KiB
2Időlimit túllépés0/0986ms500 KiB
3Időlimit túllépés0/1987ms316 KiB
4Időlimit túllépés0/1986ms512 KiB
5Időlimit túllépés0/11s316 KiB
6Időlimit túllépés0/1980ms316 KiB
7Időlimit túllépés0/2978ms316 KiB
8Időlimit túllépés0/2981ms508 KiB
9Időlimit túllépés0/2999ms316 KiB
10Időlimit túllépés0/2976ms316 KiB
11Időlimit túllépés0/2975ms1268 KiB
12Időlimit túllépés0/2976ms1260 KiB
13Időlimit túllépés0/21s1076 KiB
14Időlimit túllépés0/2981ms1076 KiB
15Időlimit túllépés0/2981ms1844 KiB
16Időlimit túllépés0/2982ms2028 KiB
17Időlimit túllépés0/21s1076 KiB
18Időlimit túllépés0/2986ms1076 KiB
19Időlimit túllépés0/2986ms1264 KiB
20Időlimit túllépés0/2989ms1076 KiB
21Időlimit túllépés0/11s1076 KiB
22Időlimit túllépés0/1991ms1352 KiB
23Időlimit túllépés0/1991ms2080 KiB
24Időlimit túllépés0/1995ms1844 KiB
25Időlimit túllépés0/11s1844 KiB
26Időlimit túllépés0/1987ms1848 KiB
27Időlimit túllépés0/1986ms2144 KiB
28Elfogadva1/1109ms1844 KiB