Questa sfida riguarda la ricerca del disco più piccolo che contiene alcuni punti. Ciò è reso in qualche modo più complicato dal fatto che, in questa sfida, le coordinate e il raggio del disco devono essere entrambi numeri interi.
Il tuo input sarà un elenco di punti con coordinate intere xe y. Puoi prenderlo come un elenco di tuple, un elenco di elenchi o qualsiasi altro modo per rappresentare una raccolta di coppie. xe ysaranno entrambi numeri interi (possibilmente negativi). Ogni punto è garantito per essere unico e ci sarà almeno un punto.
L'output sarà un disco sotto forma di tre numeri, X, Y, e R. X, YE Rsono tutti numeri interi, Xe Yrappresentano il centro del disco e Rrappresentano il suo raggio. La distanza tra ogni dato punto e il centro deve essere inferiore o uguale a R, e non deve esistere un tale disco con un disco più piccolo Rche soddisfi anche questa condizione.
È possibile che ci siano più possibili soluzioni per un determinato input, in questo caso il tuo codice deve generare almeno uno di essi.
Puoi usare qualsiasi tipo di geometria incorporata dal tuo linguaggio se ce ne sono, e l'input / output può avvenire attraverso oggetti punto / disco incorporati anziché solo numeri.
Casi test
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)
Vince il minor numero di byte.