제출 #1241304

#제출 시각아이디문제언어결과실행 시간메모리
1241304ZeroMobile (BOI12_mobile)C++20
100 / 100
759 ms15944 KiB
#include <bits/stdc++.h>
#define f first
#define ss second
using namespace std;
vector<pair<double,double>> a;
int n;
double L;
bool ok(double m){
    double cr = 0;
    for(int i=0; i < n; i ++){
        double xx = sqrt(m*m-a[i].ss*a[i].ss);
        double le = a[i].f - xx, re = a[i].f + xx;
        if(le <= cr) cr = max(cr,re);
    }
    return cr >= L;
}

signed main(){
    cin.tie(0)->sync_with_stdio(0);
    cin >> n >> L;
    a.resize(n);
    for(auto &i : a) cin >> i.first >> i.second;
    
    double l = -1, r = 1e9;
    for(int i=0; i < 100; i ++){
        double m = (l+r)/2;
        if(ok(m)) r = m;
        else l=m;
    }
    cout << fixed << setprecision(6) << r;
}
#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...