Задание выполняется с использованием прилагаемых файлов.
Фрагмент звёздного неба спроецирован на плоскость с декартовой системой координат. Учёный решил провести кластеризацию полученных точек, являющихся изображениями звёзд, то есть разбить их множество на N непересекающихся непустых подмножеств (кластеров), таких что точки каждого подмножества лежат внутри прямоугольника со сторонами длиной H и W, причём эти прямоугольники между собой не пересекаются. Стороны прямоугольников не обязательно параллельны координатным осям.
Гарантируется, что такое разбиение существует и единственно для заданных размеров прямоугольников.
Для каждой звезды дана характеристика: тип цвета, тип светимости и её размер в соответствии с таблицей.
| Обозначение |
Цвет |
| G |
белый |
| J |
зелёный |
| L |
синий |
| N |
оранжевый |
| Y |
красный |
| S |
голубой |
| Z |
жёлтый |
| Обозначение |
Размер |
| I |
сверхгигант |
| II |
яркий гигант |
| III |
гигант |
| IV |
субгигант |
| V |
карлик |
| VI |
субкарлик |
| VII |
белый карлик |
Полученные значения записаны в характеристике слитно: обозначение цвета, светимость (обозначается арабской цифрой от 1 до 9) и размер звезды. Например, G5III — белая звезда, светимость 5, гигант.
Будем называть центром кластера точку этого кластера, сумма расстояний от которой до всех остальных точек кластера минимальна. Для каждого кластера гарантируется единственность его центра. Расстояние между двумя точками на плоскости \(A(x_1, y_1)\) и \(B(x_2, y_2)\) вычисляется по формуле:
\(d(A, B) = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2}\).
В файле А хранятся данные о звёздах двух кластеров, где H=7, W=5 для каждого кластера. В каждой строке записана информация об одной звезде: сначала координата x, затем координата y, затем характеристика звезды. Значения даны в условных единицах. Известно, что количество точек не превышает 1000.
В файле Б хранятся данные о звёздах трёх кластеров, где H=3, W=7 для каждого кластера. Известно, что количество точек не превышает \(10\,000\). Структура хранения информации о звёздах в файле Б аналогична файлу А.
Известно, что в файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.
Гарантируется, что во всех кластерах обоих файлов количество точек различно.
Радиусом кластера будем называть максимальное расстояние от центра кластера до любой другой звезды этого кластера.
Спектральной однородностью кластера будем называть долю звёзд этого кластера, цвет которых совпадает с цветом звезды-центра кластера.
Для файла А определите центр каждого кластера и найдите два числа: \(A_1\) — радиус кластера с меньшим числом точек; \(A_2\) — количество звёзд того же цвета, что и центр, в кластере с бо́льшим числом точек.
Для файла Б определите центр каждого кластера (без учёта трёх «лишних» точек). Найдите два числа: \(B_1\) — количество точек в кластере с наибольшим радиусом; \(B_2\) — спектральная однородность кластера с наименьшим числом точек.
В ответе запишите четыре числа: в первой строке — целую часть произведения \(A_1 \times 10\,000\) и \(A_2\) через пробел; во второй строке — \(B_1\) и целую часть произведения \(B_2 \times 10\,000\) через пробел.