Независимость событий по двум таблицам посылок

тема: Вероятность и матожидание · уровень: средний

Условие

В пункте выдачи ведутся две таблицы по одним и тем же посылкам. В первой таблице указан признак хрупкости посылки, во второй — был ли срок выдачи нарушен. Строки таблиц могут идти в разном порядке, поэтому их нужно сопоставить по идентификатору посылки.

Рассматриваются события: A — посылка хрупкая, B — срок выдачи нарушен. Строки, в которых во второй таблице стоит значение NA, не участвуют в расчётах: для них срок выдачи неизвестен.

Пусть N — число участвующих в расчёте посылок, nA — число хрупких посылок, nB — число посылок с нарушенным сроком, nAB — число посылок, для которых произошли оба события. События считаются независимыми, если

nAB / N = (nA / N) * (nB / N).

Для проверки без деления можно использовать равносильное равенство N * nAB = nA * nB. Если равенство выполняется, в том числе при пустой группе хрупких посылок или посылок с нарушенным сроком, выводится INDEPENDENT.

Формат ввода

В первой строке дано целое число n — число посылок.

В следующих n строках дана первая таблица в формате parcel_id fragile, где parcel_id — идентификатор посылки, а fragile равен 0 или 1.

В следующих n строках дана вторая таблица в формате parcel_id delayed, где delayed равен 0, 1 или NA.

Каждый идентификатор встречается ровно один раз в каждой из двух таблиц. В таблицах содержится хотя бы одна строка со значением delayed, равным 0 или 1.

Формат вывода

Выведите слово INDEPENDENT, если события независимы, или DEPENDENT иначе. После пробела выведите число nAB.

Ответ выводится без округления, так как второе значение является целым числом.

Ограничения

1 ≤ n ≤ 1000.

Общее число строк двух таблиц не превосходит 2000.

Длина parcel_id составляет от 2 до 8 символов. Идентификатор состоит из латинских букв, цифр и символа подчёркивания.

fragile принимает значения 0 или 1.

delayed принимает значения 0, 1 или NA.

Числа N, nA, nB и nAB лежат в диапазоне от 0 до 1000, причём N ≥ 1.

Решить задачу с автопроверкой на Python →

Куда дальше