Кластеризация частиц по кинетической энергии (K=4, R=2,0).
Найдите целые части Q1×10000 и Q2×10000 по описанию демо-2027.
Рассматриваются частицы на плоскости, обладающие следующими характеристиками: декартовы координаты, вектор скорости, масса, а также признак, характеризующий внутреннее строение частицы, обозначаемый числами от I до VII (в римской системе счисления).
Учёный решил провести кластеризацию частиц по значениям их кинетической энергии, то есть разбить их множество на K непересекающихся непустых подмножеств (кластеров), таких, что модуль разности кинетических энергий любых двух частиц каждого подмножества не превосходит значения R. Гарантируется, что такое разбиение существует и единственно для заданного R.
Будем называть центром кластера такую его частицу, для которой сумма модулей разности кинетических энергий со всеми остальными частицами этого кластера минимальна.
Для каждого кластера гарантируется единственность его центра.
В каждой строке текстового файла хранится информация об одной частице: координаты x и y, проекции вектора скорости Vx и Vy, масса m и признак.
Известно, что все описанные в файле частицы подразделяются ровно на 4 кластера (K=4) с R=2,0 для каждого.
Для каждого кластера определите его центр, затем найдите два числа: Q1 – наибольшее евклидово расстояние между частицами одного кластера, имеющими признак II, и Q2 – максимальное значение кинетической энергии для центра кластера.
В ответе запишите два числа: сначала целую часть произведения Q1 × 10 000, затем целую часть произведения Q2 × 10 000.
Для справки
Кинетическая энергия E частицы массы m, обладающей скоростью \vec{V} = (Vx; Vy) вычисляется по формуле: E = \frac{1}{2}m(V²_x+V²_y)
Евклидово расстояние между двумя точками на плоскости A(x1, y1) и B(x2, y2) вычисляется по формуле: d(A, B) = √((x2 − x1)² + (y2 − y1)²)
Типовой пример имеет иллюстративный характер.
Для выполнения задания используйте данные из прилагаемого файла
Поверните телефон
Горизонтальный режим удобнее для таблицы и Python-кода