挑战在于找到包含某些给定点的最小磁盘。但是,由于在这一挑战中磁盘的坐标和半径都必须都是整数,这一点变得有些棘手。
您的输入将是具有整数坐标x
和的点的列表y
。您可以将其作为元组列表,列表列表或任何其他表示对集合的方式。x
并且y
都是(可能是负数)整数。每个点都保证是唯一的,并且至少会有一个点。
你的输出将在3号,形式的磁盘X
,Y
和R
。X
,Y
和R
都是整数,X
并且Y
代表了磁盘的中心,R
代表它的半径。每个给定点与中心之间的距离必须小于或等于R
,并且必须不存在这样的较小的磁盘,该磁盘R
也要满足此条件。
对于给定的输入,可能会有多种解决方案,在这种情况下,您的代码必须至少输出其中一种。
您可以使用语言支持的任何种类的几何内置函数(如果有),并且输入/输出可以通过内置的点/磁盘对象而不是数字来实现。
测试用例
Input (Possible) Output(s)
(x,y) (X,Y,R)
-------------------------
(0,0) (0,0,0)
-------------------------
(0,1) (0,0,1)
(1,0) (1,1,1)
-------------------------
(1,4) (4,4,3)
(3,2)
(4,1)
(4,5)
(5,2)
(7,4)
-------------------------
(-1,0) (0,0,2)
(2,0) (1,0,2)
-------------------------
(-1,0) (1,0,2)
(2,1) (0,1,2)
-------------------------
(0,0) (1,0,1)
(1,1) (0,1,1)
最少的字节数获胜。