Задание №27: Кластерный анализ и геометрические алгоритмы
Основные типы и прототипы задания №27:
Кластеризация точек (Центроиды)
2 или 3 кластера (Файл A и B)
Минимизация суммарного расстояния
Условие задания
Учёный решил провести кластеризацию некоторого множества звёзд по их расположению на карте звёздного неба. Кластер звёзд – это набор звёзд (точек) на графике. Каждая звезда обязательно принадлежит только одному из кластеров. Центр кластера – это одна из звёзд на графике, сумма расстояний от которой до всех остальных звёзд кластера минимальна. Расстояние между двумя точками A(x1, y1) и B(x2, y2) вычисляется по формуле:

Даны два входных файла (файл A и файл Б). В файле A хранятся данные о звёздах двух кластеров. В каждой строке записана информация о расположении на карте одной звезды: сначала координата x, затем координата y (в условных единицах). Известно, что количество звёзд не превышает 1000. В файле Б хранятся данные о звёздах трёх кластеров. Известно, что количество звёзд не превышает 10 000. Структура хранения информации о звездах в файле Б аналогична файлу А. В файле Б имеются координаты ровно трёх «лишних» точек, являющихся аномалиями, возникшими в результате помех при передаче данных. Эти три точки не относятся ни к одному из кластеров, их учитывать не нужно.
Для файла А определите координаты центров каждого кластера, затем найдите два числа: Px – минимальное расстояние между центром кластера и точкой (5,5; 9,1), и Py – расстояние между этой же точкой и серединой отрезка, соединяющего центры кластеров. Для файла Б определите координаты центра каждого кластера, затем найдите два числа: Q1 – количество точек всех кластеров, находящихся на расстоянии не более 10 от центра кластера с наибольшим количеством точек (включая сам центр), и Q2 – количество точек всех кластеров, находящихся на расстоянии более 5 от центра кластера с наименьшим количеством точек. Гарантируется, что во всех кластерах количество точек различно.
В ответе запишите четыре числа: в первой строке – сначала целую часть произведения Px×10 000, затем целую часть произведения Py×10 000; во второй строке – сначала значение Q1, затем значение Q2.
Для файла А определите координаты центров каждого кластера, затем найдите два числа: Px – минимальное расстояние между центром кластера и точкой (5,5; 9,1), и Py – расстояние между этой же точкой и серединой отрезка, соединяющего центры кластеров. Для файла Б определите координаты центра каждого кластера, затем найдите два числа: Q1 – количество точек всех кластеров, находящихся на расстоянии не более 10 от центра кластера с наибольшим количеством точек (включая сам центр), и Q2 – количество точек всех кластеров, находящихся на расстоянии более 5 от центра кластера с наименьшим количеством точек. Гарантируется, что во всех кластерах количество точек различно.
В ответе запишите четыре числа: в первой строке – сначала целую часть произведения Px×10 000, затем целую часть произведения Py×10 000; во второй строке – сначала значение Q1, затем значение Q2.
Ответ:
34054 1516<br/>492 520