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>
using namespace std;
#define int long long
#define all(x) (x).begin(),(x).end()
#define rall(x) (x).rbegin(),(x).rend()
signed main(){
ios::sync_with_stdio(0);cin.tie(0);
int n,l;
cin>>n>>l;
vector<pair<double,double>> v(n);
for(int i=0;i<n;i++) cin>>v[i].first>>v[i].second;
for(int i=1;i<n;i++){
if(v[i-1].first==v[i].first){
int x=i-1;
v.erase(v.begin()+i);
i=x;
}
}
double l1=0,r=1e9*sqrt(2);
while (r-l1>1e-3){
double m=(l1+r)/2;
bool ans=true;
double a=r,b=0,cur1,cur2;
for(int i=0;i<n;i++){
cur1=v[i].first-sqrt(m*m-v[i].second*v[i].second);
cur2=v[i].first+sqrt(m*m-v[i].second*v[i].second);
if(cur1<=b||i==0){
a=min(a,cur1);
b=max(b,cur2);
}
else {ans=false; break;}
}
if(a<=(double)0&&b>=(double)l&&!ans) ans=true;
if(ans) r=m;
else l1=m;
}
cout<<fixed<<setprecision(6)<<r;
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... |