제출 #1350715

#제출 시각아이디문제언어결과실행 시간메모리
1350715WarinchaiMobile (BOI12_mobile)C++20
4 / 100
1097 ms48220 KiB
#include<bits/stdc++.h>
#define int double
using namespace std;

vector<pair<int,int>>v;
int n,l;

int check(int m){
    vector<pair<int,int>>p;
    for(auto [x,y]:v){
        if(m>=y){
            int dis=sqrt(m*m-y*y);
            p.push_back({x-dis,x+dis});
        }
    }
    sort(p.begin(),p.end());
    int en=0;
    for(auto [l,r]:p){
        if(l<=en)en=max(en,r);
    }
    return en>=l;
}

int32_t main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cin>>n>>l;
    for(int i=0;i<n;i++){
        int x,y;cin>>x>>y;
        v.push_back({x,y});
    }
    int st=0,en=1e18;
    for(int i=0;i<=67*2;i++){
        int m=(st+en)/2;
        if(check(m)){
            en=m;
        }else{
            st=m;
        }
    }
    cout<<fixed<<setprecision(67)<<(st+en)/2;
}
#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...
#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...
#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...
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...