Матрица ошибок наблюдений птиц по зоне
Условие
В парке проверяют модель, которая по фотографии определяет, есть ли на ней птица редкого вида. Для каждого снимка известны зона парка, истинная метка и предсказание модели.
Истинная метка 1 означает, что редкая птица действительно была на снимке, а 0 означает её отсутствие. Предсказание модели задаётся теми же значениями. Иногда истинная метка или предсказание неизвестны и записаны как -1.
В последней строке входа указана зона парка — запрос. Нужно построить для снимков только из этой зоны матрицу ошибок модели. Снимки, у которых хотя бы одна из двух меток равна -1, не учитываются.
Обозначим TP количество снимков с истинной меткой 1 и предсказанием 1, FP — с истинной меткой 0 и предсказанием 1, FN — с истинной меткой 1 и предсказанием 0, TN — с истинной меткой 0 и предсказанием 0.
Если значения количеств совпадают, никакого выбора между ними не производится: они выводятся в фиксированном порядке TP FP FN TN.
Формат ввода
В первой строке дано целое число n — количество снимков.
В следующих n строках записаны через пробел три значения: название зоны парка zone, истинная метка true_label и предсказание модели pred_label.
В последней строке записано название зоны query_zone, для которой требуется построить матрицу ошибок.
Формат вывода
Выведите четыре целых числа через пробел: TP FP FN TN для зоны из запроса.
Округление не выполняется, так как все выводимые значения являются целыми числами.
Ограничения
1 ≤ n ≤ 1000.
Длина названия каждой зоны составляет от 1 до 20 символов латинского алфавита в нижнем регистре.
true_label и pred_label принадлежат множеству {-1, 0, 1}.
Зона из последней строки встречается хотя бы в одной из n строк.
В зоне из запроса может не оказаться снимков с двумя известными метками. В этом случае все четыре числа ответа равны 0.
Решить задачу с автопроверкой на Python →
Куда дальше
- С нуля до олимпиады: маршрут — сколько занимает язык, какие приёмы нужны и к какому этапу это ведёт
- На программиста по олимпиаде: путь по классам — что даёт диплом, куда с ним берут на ИТ-направления и почему решает 9 класс
- Python на олимпиадах — где языка хватает с запасом, а где начинают значить лимиты — с замерами