#include <bits/stdc++.h>
using namespace std;
#define ll long long
void doing() {
int n;
long double L;
cin >> n >> L;
vector<pair<long double, long double>> v;
for (int i = 0; i < n; i++) {
int a, b;
cin >> a >> b;
v.emplace_back(a, b);
}
auto cal = [&](long double x, long double y, long double r)-> pair<double, double> {
auto cur = sqrt(r * r - y * y);
return {x - cur, x + cur};
};
auto check = [&](long double x) {
double lx = 0;
for (int i = 0; i < v.size(); i++) {
if (v[i].second > x)continue;
auto [l, r] = cal(v[i].first, v[i].second, x);
if (l <= lx)lx = max(lx, r);
}
return lx >= L;
};
long double l = 0, r = 1.5e9;
while (r - l >= 1e-3) {
double mid = l + (r - l) / 2;
if (check(mid)) r = mid;
else l = mid;
}
cout << fixed << setprecision(4) << r << endl;
}
signed main() {
ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
#ifdef LOCAL
freopen("IN.txt", "r", stdin);
#else
#endif
int tc = 1;
// cin >> tc;
while (tc--) {
doing();
}
return 0;
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |