- Описание
- Отправленные решения
8. Обобщённый AUC
Классический ROC-AUC равен
где $t_i, t_j$ — правильные ответы (бинарные) для объектов $i$ и $j$, $N_0, N_1$ - количества 0 и 1 среди правильных ответов соответственно, а $y_i, y_j$ — предсказания модели для объектов $i$ и $j$. Рассмотрим обобщённый AUC, который определён не только для бинарных ответов:
Даны массив правильных ответов и массив предсказаний модели.
Необходимо посчитать обобщённый AUC.
Формат ввода
В первой строке указано одно число $N$ — число объектов в выборке ($2 \leqslant N \leqslant 100000$).
В каждой из следующих $N$ строк через пробел указаны два вещественных числа $t_i$ и $y_i$ ($0 \le t_i, y_i \le 10)$ (с точностью не более 6 цифр после десятичной точки): правильный ответ примера и предсказание модели для этого примера.
Гарантируется, что существуют два таких номера $i$ и $j$, что $t_i \ne t_j$.
Формат вывода
Выведите одно число (значение обобщённого AUC) с точностью как минимум 6 значащих цифр после десятичной точки.
Примечание
Гарантируется, что все закрытые тесты соответствуют одному из трех наборов ограничений:
1)
- $n \le 10$;
- $0 \le t_i, y_i \le 10$;
- $t_i, y_i$ целые числа;
2)
- $n = 1000$;
- $0 \le t_i, y_i \le 10$;
- $t_i, y_i$ целые числа;
3)
- $n = 10^5$;
- $0 \le t_i, y_i \le 1$;
- $t_i, y_i$: вещественные числа, не более 6 знаков после запятой.
- гарантируется, что все $t_i$, $y_i$ сгенерированы случайно с равномерным распределением в отрезке $[0; 1]$.
Ограничения
Ограничение времени
1 с
Ограничение памяти
512 МБ
Пример 1
2
0 0
1 1
1.000000
Пример 2
2
0 1
1 0
0.000000
Пример 3
3
0.5 0
0.5 1
2 0.5
0.500000
Пример 4
7
0 0
0 1
1 2
0 3
1 4
1 5
1 6
0.916667
Пример 5
10
0 4
3 0
1 2
2 4
1 0
2 1
4 1
2 1
4 4
0 0
0.538462
Пример 6
10
3 4
3 4
2 1
3 2
4 1
0 2
2 0
1 2
4 4
3 3
0.648649