Submission #76851736


Source Code Expand

Copy
#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<n;i++)
typedef long long ll;
const int N=2e5+5;
int n,k;
ll L[N],R[N];
int id[N];
bool check(ll x){
ll need=max(x,1LL);
int cnt=0;
ll last=-4e18;
rep(i,0,n){
int j=id[i];
if(L[j]>=last+need){
cnt++;
last=R[j];
if(cnt>=k) return true;
}
}
return cnt>=k;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin>>n>>k;
rep(i,0,n) cin>>L[i]>>R[i];
rep(i,0,n) id[i]=i;
sort(id,id+n,[](int a,int b){return R[a]<R[b];});
if(!check(0)){ cout<<-1<<"\n"; return 0; }
ll lo=0,hi=1e9,ans=0;
while(lo<=hi){
ll mid=(lo+hi)/2;
if(check(mid)){ ans=mid; lo=mid+1; }
else hi=mid-1;
}
cout<<ans<<"\n";
return 0;
}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#include <bits/stdc++.h>
using namespace std;
#define rep(i,a,n) for(int i=a;i<n;i++)
typedef long long ll;
const int N=2e5+5;
int n,k;
ll L[N],R[N];
int id[N];
bool check(ll x){
    ll need=max(x,1LL);
    int cnt=0;
    ll last=-4e18;
    rep(i,0,n){
        int j=id[i];
        if(L[j]>=last+need){
            cnt++;
            last=R[j];
            if(cnt>=k) return true;
        }
    }
    return cnt>=k;
}
int main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin>>n>>k;
    rep(i,0,n) cin>>L[i]>>R[i];
    rep(i,0,n) id[i]=i;
    sort(id,id+n,[](int a,int b){return R[a]<R[b];});
    if(!check(0)){ cout<<-1<<"\n"; return 0; }
    ll lo=0,hi=1e9,ans=0;
    while(lo<=hi){
        ll mid=(lo+hi)/2;
        if(check(mid)){ ans=mid; lo=mid+1; }
        else hi=mid-1;
    }
    cout<<ans<<"\n";
    return 0;
}

Submission Info

Submission Time
Task D - Maximize the Gap
User AllFinmyhand1
Language C++23 (GCC 15.2.0)
Score 400
Code Size 870 Byte
Status AC
Exec Time 54 ms
Memory 7652 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 27
Set Name Test Cases
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt
Case Name Status Exec Time Memory
00_sample_00.txt AC 1 ms 3568 KiB
00_sample_01.txt AC 1 ms 3560 KiB
00_sample_02.txt AC 1 ms 3692 KiB
01_random_03.txt AC 32 ms 7580 KiB
01_random_04.txt AC 32 ms 7484 KiB
01_random_05.txt AC 32 ms 7520 KiB
01_random_06.txt AC 37 ms 7516 KiB
01_random_07.txt AC 37 ms 7476 KiB
01_random_08.txt AC 53 ms 7396 KiB
01_random_09.txt AC 54 ms 7468 KiB
01_random_10.txt AC 38 ms 7532 KiB
01_random_11.txt AC 37 ms 7520 KiB
01_random_12.txt AC 39 ms 7412 KiB
01_random_13.txt AC 37 ms 7544 KiB
01_random_14.txt AC 33 ms 7652 KiB
01_random_15.txt AC 51 ms 7520 KiB
01_random_16.txt AC 33 ms 7596 KiB
01_random_17.txt AC 33 ms 7544 KiB
01_random_18.txt AC 33 ms 7592 KiB
01_random_19.txt AC 33 ms 7532 KiB
01_random_20.txt AC 33 ms 7520 KiB
01_random_21.txt AC 33 ms 7396 KiB
01_random_22.txt AC 43 ms 7544 KiB
01_random_23.txt AC 42 ms 7652 KiB
01_random_24.txt AC 32 ms 7652 KiB
01_random_25.txt AC 1 ms 3680 KiB
01_random_26.txt AC 1 ms 3684 KiB


2026-06-29 (Mon)
01:28:27 +09:00