This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define p pair<long long,long long>
using namespace std;
bool Check(double d,vector<p> v,int n,int l) {
double curr=0;
for (int i=0; i<n; i++) {
double x=v[i].first,y=v[i].second;
double distance=sqrt(d*d-y*y);
double st=x-distance,dr=x+distance;
if (st<=curr) curr=max(curr,dr);
}
return (curr>=l);
}
int main()
{
int n,l;
cin>>n>>l;
vector< p > v(n);
for (int i=0; i<n; i++)
cin>>v[i].first>>v[i].second;
double st=0,dr=1.5e9,mij;
while (dr-st>1e-3) {
mij=(st+dr)/2;
//cout<<st<<' '<<dr<<' '<<mij<<'\n';
if (Check(mij,v,n,l)) dr=mij;
else st=mij;
}
cout<<fixed<<setprecision(4)<<dr<<'\n';
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... |