求最小的圆包含指定数量的点的算法

给出n个点坐标,并指定一个数m(m<=n),任取其中一个点作为圆心,求一个最小的整数半径,使得这个圆包含m个点(包含哪些点没有要求)

http://wenku.baidu.com/link?url=Sq66daNjrZTEkgVO5-SgKDrjTkmayjZaZgZivLObfy_hUeg0stAlqW0grJJgbZyApmCQrd29Hh-6I0LsiLvqbDTAuTlv3KnWcBfmSLo7TEi

计算这些点(对于每个点,记作x0,y0))到指定圆心(x1,y1)的坐标(sqrt((x0-x1)^2+(y0+y1)^2))
然后排序,那么第m个点到圆心的距离就是结果。

获取最高和最低的纵坐标,最左和最右的横坐标,虚拟四个点连成长方形,可以获取到最优解圆心坐标,然后比较可以得到答案。以上只是个人见解,仅供参考