Центр центров
(Время: 10 сек. Память: 32 Мб Сложность: 50%)
Учёный решил провести кластеризацию некоторого множества звёзд по их расположению на плоской карте звёздного неба. Кластер звёзд – это набор звёзд (точек) на карте. Каждая звезда обязательно принадлежит только одному из кластеров. Между любой парой звёзд кластера существует маршрут, проходящий через звёзды, отдалённые друг от друга не более чем на единицу. Каждый кластер содержит не менее 30 звёзд. Созвездия, состоящие менее чем из 30 звёзд, считаются аномалиями и не учитываются в исследованиях.
Известно, что любые две звезды, не принадлежащие одному кластеру или аномалии, отдалены друг от друга более чем на единицу.
Центр кластера – это одна из звёзд на графике, сумма расстояний от которой до всех остальных звёзд кластера минимальна.
Под расстоянием понимается расстояние Евклида между двумя точками A(x1,y1) и B(x2,y2) на плоскости, которое вычисляется по формуле:
По заданным координатам звёзд необходимо найти центры кластеров и определить среди точек всех кластеров такую точку (Px, Py), суммарное расстояние от которой до всех центров кластеров будет минимальным. Если таковых решений несколько, то следует выбрать точку с наименьшим значением Px.
Входные данные
Входной файл INPUT.TXT содержит не более 1000 строк. В каждой строке записаны два вещественных числа xi, yi – координаты звезды.
Гарантируется, что на представленной карте звёздного неба присутствует от 2 до 10 кластеров и при этом центр каждого кластера определяется однозначно.
Выходные данные
В выходной файл OUTPUT.TXT выведите два целых числа: целую часть абсолютного значения 10 000 × Px и целую часть абсолютного значения 10 000 × Py.
Пример
| № | INPUT.TXT | OUTPUT.TXT |
| 1 | 1.65449461842075 3.98277077248044
2.25516460321932 5.21902531879277
1.96209370572822 5.90120140928511
...
[скачать]
| 5307 13171 |
Пояснение
Возможные данные одного из файлов иллюстрированы графиком:
Внимание! Карта звёзд приведёна в иллюстративных целях для произвольных значений, не имеющих отношения к какому-либо тесту входных данных.
Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!
|