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 <iostream>
#include <fstream>
#include <cmath>
#include <iomanip>
#define MAXN 1000100
using namespace std;
struct Beacon
{
double x, y;
Beacon()
{
x = y = 0;
}
};
int N; double L;
Beacon b[MAXN];
bool judge(double R)
{
double left_most_gap = 0;
double l, r;
for(int i=0; i<N; i++)
{
if(b[i].y > R)
{
continue;
}
else
{
l = b[i].x - sqrt(R*R-b[i].y*b[i].y);
r = b[i].x + sqrt(R*R+b[i].y*b[i].y);
if(l <= left_most_gap)
{
left_most_gap = max(left_most_gap, r);
}
}
}
if(left_most_gap >= L)
{
return true;
}
else
{
return false;
}
}
int main()
{
cin>>N>>L;
for(int i=0; i<N; i++)
{
cin>>b[i].x>>b[i].y;
}
double lbound = 0; double hbound = 1.5e9; double avg;
while(hbound - lbound > 1e-3)
{
avg = (lbound + hbound)/2;
if(judge(avg))
{
hbound = avg;
}
else
{
lbound = avg;
}
}
cout<<fixed<<setprecision(3)<<avg<<endl;
}
# | 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... |