Ошибка классификатора птиц
Условие
В парке установлены камеры, которые распознают птиц на фотографиях. После ручной проверки для каждой фотографии известен настоящий вид птицы и вид, предсказанный классификатором.
По этим данным строится матрица ошибок: строка соответствует настоящему виду, а столбец — предсказанному. Для каждого вида из запроса требуется определить вероятность того, что классификатор ошибся, если он предсказал именно этот вид.
Для вида s считается величина
error(s) = количество фотографий, где предсказан s и настоящий вид не равен s / количество фотографий, где предсказан s.
Все одинаковые строки наблюдений учитываются отдельно. При равенстве любых чисел в матрице ошибок никакой выбор не производится: все такие наблюдения суммируются. Для каждого вида из запроса гарантируется, что классификатор хотя бы один раз предсказал этот вид, поэтому деления на ноль не возникает.
Формат ввода
В первой строке даны два целых числа n и q — количество проверенных фотографий и количество видов в запросе.
В следующих n строках даны два названия вида: actual predicted. actual — настоящий вид птицы, predicted — вид, предсказанный классификатором.
В следующих q строках дано по одному названию вида s. Для каждого такого вида требуется найти error(s).
Формат вывода
Выведите q строк. В строке с номером i выведите вероятность ошибки для вида из i-й строки запроса с ровно тремя знаками после десятичной точки.
Округление производится до ближайшего значения с тремя знаками после десятичной точки. Если следующая цифра равна 5, число округляется вверх.
Ограничения
1 <= n <= 1000.
1 <= q <= 1000.
Названия видов состоят из строчных латинских букв, их длина от 1 до 20.
В каждой из n строк названия actual и predicted удовлетворяют указанному ограничению длины.
Каждый вид из запроса встречается хотя бы в одной строке наблюдений в качестве predicted.
Решить задачу с автопроверкой на Python →
Куда дальше
- С нуля до олимпиады: маршрут — сколько занимает язык, какие приёмы нужны и к какому этапу это ведёт
- Родителям: подготовка бесплатно — сколько стоит репетитор, что даёт бесплатный маршрут и как понять, что ребёнок занимается
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели