제출 #633268

#제출 시각아이디문제언어결과실행 시간메모리
633268afatpotatoMobile (BOI12_mobile)C++14
100 / 100
429 ms16032 KiB
#include <bits/stdc++.h>

using namespace std;



pair<long long, long long> tower[1000000];
long long n, l;

int main() {
    ios_base::sync_with_stdio(0);
	cin.tie(0);
    cin >> n >> l;
    for (int i = 0; i < n; i++) {
        cin >> tower[i].first >> tower[i].second;
    }

    double low = 0;
    double high = 1.5e9;

    while (high - low > 1e-3) {
        double mid = (low + high) / 2;
        double cur = 0;
        for (int i = 0; i < n; i++) {
            double delta = sqrt(mid * mid - tower[i].second * tower[i].second);
            double a = tower[i].first - delta;
            double b = tower[i].first + delta;
            if (a <= cur) {
                cur = max(cur, b);
            }
        }
        if (cur > l) {
            high = mid;
        } else {
            low = mid;
        }
    }
    cout << fixed;
    cout << setprecision(4);
    cout << low << endl;
}
#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...