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

Аномалиями назовём совокупности из не более чем 10 точек, каждая из которых находится на расстоянии более одной условной единицы от точек кластеров. Аномалии в расчётах не учитываются. Даны два входных файла (файл A и файл Б). В файле A хранятся данные о точках двух кластеров. В каждой строке записана информация о расположении одной точки: сначала координата x, затем координата y (в условных единицах). Известно, что количество точек не превышает 1000. В файле Б той же структуры хранятся данные о трёх кластерах. Известно, что количество точек не превышает 10 000. Структура хранения информации о точках в файле Б аналогична файлу А. Возможные данные одного из файлов иллюстрированы графиком.
Для каждого файла определите координаты центра каждого кластера, затем вычислите два числа: Px – среднее арифметическое абсцисс центров кластеров, и Py – среднее арифметическое ординат центров кластеров. В ответе запишите четыре числа: в первой строке сначала целую часть произведения Px×100 000, затем целую часть произведения Py×100 000 для файла А, во второй строке – аналогичные данные для файла Б.
Для каждого файла определите координаты центра каждого кластера, затем вычислите два числа: Px – среднее арифметическое абсцисс центров кластеров, и Py – среднее арифметическое ординат центров кластеров. В ответе запишите четыре числа: в первой строке сначала целую часть произведения Px×100 000, затем целую часть произведения Py×100 000 для файла А, во второй строке – аналогичные данные для файла Б.
Ответ:
19615 69089<br/>67799 17717