某国有 N个军事基地,每一个军事基地的位置可以由二维坐标平面上的一个点 (x,y)表示。现在,这个国家的元首希望建立一个军事通讯基站。由于某些原因,这个军事通讯基站只能建立在 x轴上的某个位置。现在,元首想要知道,新建立的基站到这 N个军事基地的最大距离的最小值是多少。
输入第一行输入一个整数 N [1,100 000],表示军事基地的数量。
接下来 N 行,每行包含两个以空格分隔的整数 x,y [-10 000,10 000],表示每一个军事基地的位置坐标。
输出一个保留到小数点后4位的小数表示答案。
对于给出的样例,通讯基站建立在 (0,0)处时其到三个军事基地的距离最大值为2 。可以证明 2为可能的最小值。
测试输入 | 期待的输出 | 时间限制 | 内存限制 | 额外进程 | |
---|---|---|---|---|---|
测试用例 1 | 以文本方式显示
|
以文本方式显示
|
1秒 | 64M | 0 |
#include
#include
#include
double measure(double x,float p[][2],int n)
{
int i;
double d=0,maxd=0;
for(i=0;imaxd) maxd=d;
}
return maxd;
}
int main(){
int n,i;
scanf("%d",&n);
float p[n][2];
for(i=0;i1e-6)
{
midl=(right+left)/2;
midr=(right+midl)/2;
if(measure(midl,p,n)