#include <bits/stdc++.h>
#define int long long
#define ld long double
#define tri pair<pair<int, int>, int>
using namespace std;
const int INF=1e9+7, MAXI=1e6+1;
int n, l;
bool check(const vector<ld>& x, const vector<ld>& y, ld r) {
ld left=0;
for (int i=0; i<n; i++) {
if ((left-x[i])*(left-x[i])+y[i]*y[i]>r*r) continue;
left=max(left, sqrt(r*r-y[i]*y[i])+x[i]);
}
return left>=l;
}
void solve() {
cin>>n>>l;
vector<ld> x(n), y(n);
for (int i=0; i<n; i++) cin>>x[i]>>y[i];
ld lo=-1, hi=1e9+1, m;
for (int i=0; i<100; i++) {
m=lo+(hi-lo)/2;
if (check(x, y, m)) hi=m;
else lo=m;
}
cout<<fixed<<setprecision(6)<<hi;
return;
}
signed main () {
ios_base::sync_with_stdio(0);
cin.tie(0);
// int T;
// cin>>T;
// while (T--)
solve();
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... |