Ожидаемое число решающих партий трансляции
Условие
В шахматном турнире часть досок показывают в основной трансляции. Для каждой партии расписание содержит признак показа, а отдельная таблица прогнозов может содержать вероятность решающего результата: победы одного из соперников, а не ничьей.
Для каждой партии i из трансляции пусть p_i — вероятность решающего результата. Если прогноз для партии отсутствует, считается, что её вероятность равна 0. Требуется найти математическое ожидание числа решающих партий в трансляции. По линейности математического ожидания оно равно E = p_1 + p_2 + ... + p_k, где суммирование идёт только по партиям с признаком показа 1.
Идентификаторы партий внутри каждой таблицы не повторяются. При равенстве вероятностей несколько партий учитываются по отдельности, каждая со своим признаком показа.
Формат ввода
В первой строке записаны два целых числа n и m: число партий в расписании и число имеющихся прогнозов.
В следующих n строках записано расписание в формате: game_id white_player black_player broadcast
Здесь game_id — идентификатор партии, white_player и black_player — имена игроков без пробелов, broadcast равен 1, если партия показывается в основной трансляции, и 0 иначе.
В следующих m строках записаны прогнозы в формате: game_id decisive_probability
Здесь decisive_probability — вероятность решающего результата в партии с данным идентификатором. Строки прогнозов могут идти в произвольном порядке. Для некоторых партий расписания прогноз может отсутствовать.
Формат вывода
Выведите математическое ожидание числа решающих партий в основной трансляции с тремя знаками после точки.
Ограничения
1 ≤ n ≤ 2000.
0 ≤ m ≤ n.
1 ≤ game_id ≤ 10^9.
Длина каждого имени игрока составляет от 1 до 20 символов. Имена состоят из латинских букв, цифр и символа _.
broadcast равен 0 или 1.
decisive_probability задано десятичным числом от 0.000 до 1.000 включительно и содержит ровно три знака после точки.
Каждый game_id из таблицы прогнозов встречается в таблице расписания. Прогнозы для части партий могут отсутствовать. В трансляции может не быть ни одной партии.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- Родителям: подготовка бесплатно — сколько стоит репетитор, что даёт бесплатный маршрут и как понять, что ребёнок занимается
- БВИ и льготы при поступлении — какой диплом что даёт и сколько лет он действует