[ZJU 2107]Quoit Design(平面最近点对)
来源:互联网 发布:小米笔记本pro 知乎 编辑:程序博客网 时间:2024/05/19 12:16
【题目大意】:
给你N个点,求最近的两个点的距离,然后除以2输出。
【题目分析】:
这个就是经典的平面最近点对问题。求法就是分支策略,不断地二分,然后取最小。然后需要注意的就是越过中线的点对的处理。
其实那个很猥琐,想法就是找出变长为2ans*ans的矩形,然后进行枚举。这里有个很诡异的结论,就是这个矩形当中的点数不会超过8。
大致流程:
1、先按照x和y坐标进行排序
2、调用分治程序
3、分情况讨论
4、若是一个点则返回无穷大
5、若是两个点则返回两点之间的距离
6、若是多个点则分治
7、合并,查看是否最近点对是否跨立于左右区域
8、假设当前最近点对距离为ans,则寻找在2ans*ans的矩形范围内点
9、可以证明,2ans*ans这个矩形的点不超过8个,之后进行枚举
10、得出最近点对
【代码(很丑,大家尽情鄙视~)】:
- [ZJU 2107]Quoit Design(平面最近点对)
- HDU1007 Quoit Design (平面最近点对)
- zoj 2107 Quoit Design(平面最近点对)
- hdu 1007 Quoit Design(平面最近点对)
- HDU 1007 Quoit Design(计算几何 平面最近点对)
- hdu 1007 Quoit Design 平面最近点对
- hdu1007 Quoit Design 平面最近点对(分治)
- hdu1007 Quoit Design【平面最近点对+分治】
- zoj 2107 Quoit Design(最近点对)
- hdu 1007 zoj 2107 Quoit Design 求平面最近点对 分治法
- zoj 2107 Quoit Design(最近点对)
- hdu 1007 && zoj 2107 Quoit Design [最近点对]
- ZOJ 2107 HDU 1007 Quoit Design(最近点对)
- [最近点对]HDOJ 1007 Quoit Design
- HDU_1007[Quoit Design](最近点对)
- hdu1007 Quoit Design(最近点对)
- hdu1007 Quoit Design (最近点对)
- hdu 1007 Quoit Design 最近点对
- Comparator和Comparable的区别
- MFC 和 C#混合开发
- Portal技术综述
- java的几种对象(PO,VO,DAO,BO,POJO)解释
- RowDataBound事件
- [ZJU 2107]Quoit Design(平面最近点对)
- 程序员必备
- java 数字前补零
- 推荐一个轻量级的java rest 框架 JRest4Guice
- 程序员专用IM新版本发布,诸多创新非模仿
- 我们不怕死,我们怕被遗忘
- 通过 Jersey 客户端 API 调用 REST 风格的 Web 服务
- DataGridView 单元格只能录入数字
- nchar,char,varchar与nvarchar区别