Доля взносов категории в забеге
Условие
На школьной спартакиаде участники заранее регистрируются на забег и вносят стартовый взнос. В первой таблице приведены сведения о регистрации: номер участника, его возрастная категория и размер взноса.
Во второй таблице приведены результаты забега. Запись со статусом FINISHED означает, что участник финишировал и его взнос учитывается в выручке забега. Записи со статусами DNF и DNS в выручке не учитываются. Если номера участника нет во второй таблице, считается, что он не стартовал, и его взнос также не учитывается.
Требуется найти долю выручки указанной категории среди всей выручки финишировавших участников в процентах. Если S_cat — сумма взносов финишировавших участников указанной категории, а S_all — сумма взносов всех финишировавших участников, то требуется вывести значение 100 * S_cat / S_all.
Гарантируется, что хотя бы один участник финишировал с положительным взносом, поэтому деления на ноль не возникает. При равенстве сумм никакой дополнительный выбор не выполняется: в ответе всё равно выводится доля указанной категории.
Формат ввода
В первой строке даны два целых числа n и m — число строк в таблице регистрации и число строк в таблице результатов.
Во второй строке дано название категории, для которой нужно вычислить долю выручки.
В следующих n строках находятся данные регистрации в формате: bib category fee
Здесь bib — номер участника, category — название его категории, fee — размер стартового взноса.
В следующих m строках находятся результаты в формате: bib status
Здесь bib — номер участника, status — один из статусов FINISHED, DNF, DNS.
Формат вывода
Выведите долю выручки указанной категории в процентах с двумя знаками после точки.
Ограничения
1 ≤ n ≤ 1000.
1 ≤ m ≤ n.
1 ≤ bib ≤ 1 000 000.
Номера bib в таблице регистрации различны.
Каждый номер из таблицы результатов присутствует в таблице регистрации и встречается в таблице результатов не более одного раза.
0 ≤ fee ≤ 100 000.
Длина названия category составляет от 1 до 20 символов. Название состоит из латинских букв, цифр и символа _.
В качестве status используются только значения FINISHED, DNF, DNS.
Сумма взносов финишировавших участников положительна.
Решить задачу с автопроверкой на Python →
Куда дальше
- С нуля до олимпиады: маршрут — сколько занимает язык, какие приёмы нужны и к какому этапу это ведёт
- Python на олимпиадах — где языка хватает с запасом, а где начинают значить лимиты — с замерами
- Родителям: подготовка бесплатно — сколько стоит репетитор, что даёт бесплатный маршрут и как понять, что ребёнок занимается