Задание 27 ЕГЭ по информатике

А.Ю. Роговid 370402 балла

Кластеризация

Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на NN непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной HH и WW, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям. Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.

Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости A(x1,y1)A(x_{1},y_{1}) и B(x2,y2)B(x_{2},y_{2}) вычисляется по формуле:

d(A,B)=(x2x1)2+(y2y1)2d(A,B)=\sqrt{(x_{2}−x_{1})^{2}+(y_{2}−y_{1})^{2}}.

В файле A хранятся данные о звёздах двух кластеров, где H=4H = 4, W=4W=4 для каждого кластера. В каждой строке записана информация о расположении на карте одной точки: сначала координата xx, затем координата yy. Значения даны в условных единицах. Известно, что количество звёзд не превышает 1000.

В файле B хранятся данные о звёздах трёх кластеров, где H=5H = 5, W=5W = 5 для каждого кластера. Известно, что количество звёзд не превышает 10000. Структура хранения информации о звездах в файле B аналогична файлу А. 

Известно, что в файле В имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.

Для файла А определите координаты центра каждого кластера, затем вычислите два числа: PxP_{x}​ -  расстояние по оси абcцисс между центрами кластеров и PyP_{y}​ - расстояние по оси ординат между центрами кластеров.

Для файла B определите координаты центра каждого кластера, затем вычислите два числа: QxQ_{x}​ - расстояние между центрами кластеров с минимальным и минимальным количеством точек, и QyQ_{y} - минимальное расстояние от центра кластера до любой точки другого кластера.

Гарантируется, что во всех кластерах количество точек различно.

В ответе запишите четыре числа: в первой строке - сначала целую часть абсолютной величины произведения Px10 000P_{x} * 10\space000​, затем целую часть абсолютной величины произведения Py10 000P_{y} * 10\space000; во второй строке - сначала целую часть абсолютной величины произведения Qx10 000Q_{x} * 10\space000​, затем целую часть абсолютной величины произведения Qy10 000Q_{y} * 10\space000.

Возможные данные одного из файлов проиллюстрированы графиком.

Внимание! График приведён в иллюстративных целях для произвольных значений, не имеющих отношения к заданию.
Для выполнения задания используйте данные из прилагаемых файлов. 

Кластеризация, задание 27, рис.1

Файл А к заданию: https://drive.google.com/file/d/18mKzx7tt3yZVr75QjG4JD82uphZksHuC/view?usp=drive_link

Файл В к заданию: https://drive.google.com/file/d/1TaGUB5zv27BaMbvSTRat98G2-BrK3ePb/view?usp=drive_link