1336: [Balkan2002]Alien最小圆覆盖 Description 给出N个点,让你画一个最小的包含所有点的圆。 给出N个点,让你画一个最小的包含所有点的圆。 Input 先给出点的个数N,2<=N<=100000,再给出坐标Xi,Yi.(-10000.0<=xi,yi<=10000. ...
分类:
其他好文 时间:
2016-07-15 23:47:37
阅读次数:
298
思路:先考虑在D高度的最小圆覆盖,再一层一层往下走时,可以保证圆心与最开始的圆相同的时候答案是最优的。 时间复杂度O(n) 有一个坑点,就是我用了srand(time(NULL))就T了,RP太差了。。 ...
分类:
其他好文 时间:
2016-07-15 15:16:17
阅读次数:
210
1336: [Balkan2002]Alien最小圆覆盖 Time Limit: 1 Sec Memory Limit: 162 MBSec Special Judge Submit: 1473 Solved: 648 [Submit][Status][Discuss] Description In ...
分类:
其他好文 时间:
2016-07-11 10:20:19
阅读次数:
130
最小圆覆盖。。三个for是O(n)的QAQ。。因为随机化后新的点不在当前圆内的几率不大。。 学习了下求中垂线的姿势... 1 #include<cstdio> 2 #include<cmath> 3 #include<iostream> 4 #include<cstdlib> 5 #include< ...
分类:
其他好文 时间:
2016-06-19 12:59:37
阅读次数:
152
本来不想学的…于是今天就碰到一道大裸题… 例题:bzoj2823 求最小圆覆盖n个点。 伪代码如下: 把所有点随机化,设为(x[1],y[1])...(x[n],y[n]) 开始把圆心设为x[1],半径设为0 for i=2 to n 如果i号点在当前圆内则跳过 //那么i号点就在圆周上 把1号点和...
分类:
其他好文 时间:
2016-03-19 16:25:31
阅读次数:
230
//最小圆覆盖//输入: 从下标0开始的点集_ps和大小_n//输出: 覆盖所有点的最小圆//复杂度: O(n)//注意: 会对_ps进行随机处理操作,将会改变点集的内部顺序Circle MinCoverCir(Point _ps[],int _n){ //随机处理,但是会改变传入的点集。 ...
分类:
其他好文 时间:
2016-01-10 07:03:56
阅读次数:
131
随机增量算法(a randomized incremental algorithm)#define sqr(x) ((x)*(x))#define EPS 1e-4struct P{ double x, y; P(double x, double y):x(x),y(y){} P(...
分类:
其他好文 时间:
2015-11-18 21:18:44
阅读次数:
224