#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std; struct node
{
double x,y;
}point[];
int n; bool hAlignLess(node p1,node p2)
{
if(p1.x != p2.x) return p1.x < p2.x;
else return p1.y < p2.y;
} double getDist(node p1, node p2)
{
return sqrt((p1.x - p2.x)*(p1.x - p2.x) + (p1.y - p2.y)*(p1.y - p2.y));
} double getMin(double a, double b)
{
return a<b?a:b;
} double solve(int l,int r)
{
if(l == r)
return ;
if(l == r - )
return getDist(point[l],point[r]);
if(l == r - )
return getMin(getMin(getDist(point[l],point[l+]),getDist(point[l+],point[l+])),getDist(point[l],point[l+]));
int i,j,mid = (l+r) >> ;
double curmin = getMin(solve(l,mid),solve(mid+,r));
for(i=l;i<=r;i++)
for(j=i+;j<=i+ && j<=r;j++)
{
curmin = getMin(curmin,getDist(point[i],point[j]));
}
return curmin;
} int main() {
int i;
while(scanf("%d",&n)!=EOF && n){
for(i = ; i < n; i++){
scanf("%lf %lf",&point[i].x,&point[i].y);
}
sort(point,point+n,hAlignLess);
double ans = solve(,n-);
printf("%.2lf\n",ans/);
}
return ;
}

hd1007的更多相关文章

随机推荐

  1. Codeforces 1065 简要题解

    文章目录 A题 B题 C题 D题 E题 F题 G题 传送门 GGG题略难,膜了一波zhouyuyang{\color{red} zhouyuyang}zhouyuyang巨佬的代码. 其余都挺清真的. ...

  2. mac os ssh远程链接centos提示证书错误解决方法

    下面是错误提示 IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you ...

  3. php 与 memcache 笔记

    一:安装 Memcache是什么Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力.它 ...

  4. 如何在Ubuntu上安装LAMP服务器系统?

    在Ubuntu上安装LAMP Ubuntu的开发人员让人们很容易安装和配置LAMP软件包,只要借助一个终端命令.所以,打开终端窗口,让我们开始入手吧. sudo apt-get install lam ...

  5. 前台js接收后台的json数据

    后台返回的json数据,如php的: return json_encode($data); 在前台 js接收如下: function json2object(str){ var jsstr = str ...

  6. 快乐python 零基础也能P图 —— PIL库

    Python PIL PIL (Python Image Library) 库是Python 语言的一个第三方库,PIL库支持图像存储.显示和处理,能够处理几乎所有格式的图片. 一.PIL库简介 1. ...

  7. Android手机app的adb命令测试电量

    Android手机app电量测试 Android 5.0及以上的设备, 允许我们通过adb命令dump出电量使用统计信息 第一步:手机安装要测试的应用,打开手机开发者模式-USB模式,运行cmd.ex ...

  8. JS入门经典第四章总结

    charAt():该函数有一个参数,即选择哪一个位置上的参数.返回值就是该位置上的字符. charCodeAt():该函数有一个参数,即选择哪一个位置上的参数.返回值是该位置字符在Unicode字符集 ...

  9. POJ - 3984 迷宫问题 bfs解法

    #include<stdio.h> #include<string.h> #include<algorithm> #include<stack> usi ...

  10. C++反汇编(一)

    对象/结构体 对象的大小只包括数据成员,成员函数属于执行代码. 对象长度 = sizeof(数据成员1) + sizeof(数据成员2) + ...... + sizeof(数据成员n) 特殊情况公式 ...