24962023-01-13 20:15:53kohumarkTV szolgáltatókcpp11Hibás válasz 12/4035ms5856 KiB
#include <iostream>
using namespace std;

int mi, ma, x, n, k;

long long es(int x, int bj[][2]) {
    int e=x+k-1;
    int c=0;
    for (int i=0; i<n; i++) {
        c+=max(0, bj[i][0]-x);
        c+=max(0, e-bj[i][1]);
    }
    return c;
}

int main(){
	ios_base::sync_with_stdio(false); cin.tie(NULL);
	cin >> n >> k;
	int bj[n][2];
	int veg=0;
	for(int i=0; i<n; i++){
		cin >> bj[i][0] >> bj[i][1];
		veg=max(veg,bj[i][1]);
		bj[i][0]--; bj[i][1]--;
	}
	
	
	mi=-1; ma=veg;
    while(ma-mi>1){
        x=(ma+mi)/2;
        if (es(x,bj)>es(x+1,bj)) mi=x;
        else ma=x;
    }
    
    cout << min(es(mi,bj), es(ma,bj));
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base12/40
1Elfogadva0/03ms1892 KiB
2Elfogadva0/02ms2088 KiB
3Elfogadva1/12ms2292 KiB
4Elfogadva1/12ms2396 KiB
5Elfogadva1/12ms2604 KiB
6Elfogadva1/12ms2808 KiB
7Elfogadva2/22ms3008 KiB
8Elfogadva2/22ms3108 KiB
9Elfogadva2/22ms3212 KiB
10Elfogadva2/22ms3312 KiB
11Hibás válasz0/214ms4056 KiB
12Hibás válasz0/214ms4060 KiB
13Hibás válasz0/214ms4056 KiB
14Hibás válasz0/214ms4204 KiB
15Hibás válasz0/228ms4828 KiB
16Hibás válasz0/228ms4836 KiB
17Hibás válasz0/218ms4188 KiB
18Hibás válasz0/218ms4260 KiB
19Hibás válasz0/218ms4392 KiB
20Hibás válasz0/218ms4472 KiB
21Hibás válasz0/118ms4464 KiB
22Hibás válasz0/118ms4596 KiB
23Hibás válasz0/135ms5596 KiB
24Hibás válasz0/135ms5676 KiB
25Hibás válasz0/135ms5656 KiB
26Hibás válasz0/135ms5788 KiB
27Hibás válasz0/135ms5852 KiB
28Hibás válasz0/135ms5856 KiB