24942023-01-13 20:07:04kohumarkTV szolgáltatókcpp11Hibás válasz 12/4035ms5944 KiB
#include <iostream>
#include <climits>
using namespace std;

int mi, ma, x, n, k;

int 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=0; 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/02ms2084 KiB
3Elfogadva1/12ms2292 KiB
4Elfogadva1/12ms2364 KiB
5Elfogadva1/12ms2500 KiB
6Elfogadva1/12ms2700 KiB
7Elfogadva2/22ms2908 KiB
8Elfogadva2/22ms3124 KiB
9Elfogadva2/22ms3184 KiB
10Elfogadva2/22ms3336 KiB
11Hibás válasz0/214ms4208 KiB
12Hibás válasz0/214ms4380 KiB
13Hibás válasz0/214ms4592 KiB
14Hibás válasz0/214ms4708 KiB
15Hibás válasz0/228ms5552 KiB
16Hibás válasz0/228ms5552 KiB
17Hibás válasz0/218ms4784 KiB
18Hibás válasz0/218ms4996 KiB
19Hibás válasz0/218ms5204 KiB
20Hibás válasz0/218ms5088 KiB
21Hibás válasz0/118ms5172 KiB
22Hibás válasz0/118ms5084 KiB
23Hibás válasz0/135ms5864 KiB
24Hibás válasz0/135ms5944 KiB
25Hibás válasz0/135ms5940 KiB
26Hibás válasz0/135ms5944 KiB
27Hibás válasz0/135ms5860 KiB
28Hibás válasz0/135ms5860 KiB