Ранговая связь продаж мороженого
Условие
Владелец киоска сопоставляет выручку за дни работы с числом проданных порций. Данные поступили из двух независимых журналов, поэтому строки в них могут находиться в разном порядке.
В первой таблице для каждого дня указана выручка в рублях, во второй — число проданных порций. Дни сопоставляются по идентификатору дня. Необходимо вычислить коэффициент ранговой корреляции Спирмена между этими двумя величинами.
Ранг значения равен его позиции после сортировки по возрастанию, начиная с 1. Для каждого дня вычисляется разность рангов d_i. При n >= 2 коэффициент Спирмена определяется формулой rho = 1 - 6 * sum(d_i^2) / (n * (n^2 - 1)). Если n = 1, по соглашению в этой задаче коэффициент считается равным 0.
В каждой из двух таблиц все числовые значения различны, поэтому одинаковых рангов не возникает. Идентификаторы дней в каждой таблице также различны, а набор идентификаторов в обеих таблицах совпадает.
Формат ввода
В первой строке дано целое число n — количество дней.
Следующие n строк содержат первую таблицу: идентификатор дня и выручку этого дня в рублях.
Следующие n строк содержат вторую таблицу: идентификатор дня и число проданных в этот день порций мороженого.
Формат вывода
Выведите одно число — коэффициент ранговой корреляции Спирмена.
Число необходимо округлить до трёх знаков после десятичной точки. Если значение находится ровно посередине между двумя вариантами округления, выбирается вариант с большей абсолютной величиной.
Ограничения
1 <= n <= 4000.
Идентификатор дня состоит из строчных латинских букв, цифр и символа подчёркивания, его длина составляет от 1 до 20 символов.
Выручка и число проданных порций — целые числа от 0 до 1 000 000 000.
Внутри каждой таблицы числовые значения не повторяются. Пустых строк и пропущенных значений во входных данных нет.
Решить задачу с автопроверкой на Python →
Куда дальше
- Python на олимпиадах — где языка хватает с запасом, а где начинают значить лимиты — с замерами
- Перечневые олимпиады: что это и что дают — весь перечень Минобрнауки: уровни, срок диплома, разрезы по предметам и классам
- Олимпиада по информатике: с чего начать — два мира олимпиад — ВсОШ и перечневые: этапы, задания и на каком языке писать