Este desafío consiste en encontrar el disco más pequeño que contenga algunos puntos dados. Sin embargo, esto se hace algo más complicado por el hecho de que en este desafío, las coordenadas y el radio del disco deben ser enteros.
Su entrada será una lista de puntos con coordenadas enteras x
y y
. Puede tomar esto como una lista de tuplas, una lista de listas o cualquier otra forma de representar una colección de pares. x
y y
ambos serán enteros (posiblemente negativos). Se garantiza que cada punto sea único, y habrá al menos un punto.
Su salida será un disco en forma de tres números, X
, Y
, y R
. X
, Y
Y R
son todos los enteros, X
y Y
representan el centro del disco y R
representa su radio. La distancia entre cada punto dado y el centro debe ser menor o igual que R
, y no debe existir un disco con un tamaño menor R
que también satisfaga esta condición.
Es posible que haya múltiples soluciones posibles para una entrada dada, su código debe generar al menos una de ellas en este caso.
Puede usar cualquier tipo de geometría incorporada que su lenguaje admita si las hay, y la entrada / salida puede ser a través de objetos de punto / disco integrados en lugar de solo números.
Casos de prueba
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)
Pocos bytes ganan.