Main » 2013 October 25 » [NOIP2010模拟赛]Phone cell
6:45 AM [NOIP2010模拟赛]Phone cell |
表示是经典几何题,《最多覆盖点》Prob.题意:给你一个单位圆,还有平面上的n个点,求这个圆最多能覆盖的点数Solution:分析:这题很容易想到一个O(n^3)的算法,也就是枚举两个距离小于2的点,用它们来固定一个圆,当然对称圆也要算,再枚举所有点,看是不是在这个圆内,当然这题这样就可以水过,不过这并不是最优的。还有一种O(n^2 log n)的算法,这种方法其实也简单,不过我还是没有自己想出来,先枚举一个点,再枚举所有与它距离小于2的点,这样就可以求出相交弧,把所有弧保存下来,并离散化,就能算出覆盖次数最多的一段弧,这个次数也就是答案了。 |
|
Total comments: 0 | |