Ця задача полягає у пошуку найменшого диска, який містить деякі задані точки. Це стає дещо складнішим, однак, тим, що в цьому виклику координати та радіус диска мають бути обома цілими.
Вашим входом буде список точок з цілими координатами x
та y
. Ви можете взяти це як список кортежів, список списків або будь-який інший спосіб представити колекцію пар. x
і y
обидва будуть (можливо негативними) цілими числами. Кожен пункт гарантовано буде унікальним, і буде хоча б один бал.
Ваш вихід буде диск у вигляді трьох чисел, 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)
Виграє найменше байт.