Submission #1271646

#TimeUsernameProblemLanguageResultExecution timeMemory
1271646LeonidCukMobile (BOI12_mobile)C++20
50 / 100
1096 ms33392 KiB
#include <bits/stdc++.h>
using namespace std;
long double dolz;
vector<pair<long double,long double>>v;
bool check(double a)
{
    long double t=0;
    for(auto p:v)
    {
        long double x=p.first,y=p.second;
        if(y>a)continue;
        long double k=sqrt(a*a-y*y);
        long double s=x-k,e=x+k;
        if(s<=t)t=max(t,e);
    }
    return t>=dolz;
}
int main()
{
    int n;
    cin>>n>>dolz;
    long double a,b;
    for(int i=0;i<n;i++)
    {
        cin>>a>>b;
        v.push_back({a,b});
    }
    long double l=0,r=1e9,dif=1e-3;
    while(r-l>dif)
    {
        long double m=(l+r)/2;
        if(check(m))r=m;
        else l=m;
    }
    cout<<fixed<<setprecision(4)<<l;
}
#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...