Автор: | Г. Гренкин, И. Блинов | Ограничение времени: | 1 сек | |
Входной файл: | Стандартный вход | Ограничение памяти: | 512 Мб | |
Выходной файл: | Стандартный выход |
В городской поликлинике поставили задачу выяснить, какие сочетания пульса pi и артериального давления bi приводят к плохому самочувствию. С этой целью врачи измерили эти параметры у n пациентов, спросив у них о самочувствии. Получилась выборка с двумя признаками, разделенная на два класса ci: «1» - плохое самочувствие, «0» - нормальное самочувствие.
Данные передали в информационный центр поликлиники, где хотят построить оптимальную разделяющую границу между классами так, чтобы AUC-ROC-метрика оказалась наибольшей.
Требуется провести прямую через две точки из выборки так, чтобы при предсказании «1» по одну сторону от прямой или на самой прямой и «0» в остальных случаях классификация получилась наилучшей.
AUC вычисляется следующим образом. Вычисляется число реальных единиц K1 и число реальных нулей K0, расположенных в положительной полуплоскости. Тогда AUC = 0.5 + 0.5 ⋅ K1N1 − 0.5 ⋅ K0N0, где N1 – общее число единиц, N0 – общее число нулей.
Отметим, что положительной (соответствующей классу «1») считаем ту полуплоскость, в которой AUC больше.
Первая строка содержит одно целое число n. Далее следует n троек чисел pi, bi, ci. Числа pi, bi вещественные, ci — это 0 или 1. Гарантируется, что существует хотя бы одна точка относящаяся к классу 1 и хотя бы одна точка относящаяся к классу 0. Никакие три точки (pi, bi) не лежат на одной прямой.
Выведите одно вещественное число — максимальное значение метрики AUC с точностью до 3х знаков после запятой.
2 ≤ n ≤ 1000 0 ≤ pi, bi ≤ 109 ci ∈ 0, 1
№ | Стандартный вход | Стандартный выход |
---|---|---|
1 |
|
|
2 |
|
|