Посещения разделов школьного сайта
Условие
В журнале школьного сайта хранятся две таблицы. Первая таблица содержит зарегистрированные сессии посещений. Вторая таблица содержит события открытия страниц. Строки второй таблицы сопоставляются с первой по идентификатору сессии.
Нужно посчитать число зарегистрированных сессий, в которых была открыта хотя бы одна из страниц NEWS, OLYMPIAD или RESULTS. События с идентификатором, которого нет в таблице сессий, относятся к неполным данным и не учитываются. Повторные открытия одной страницы в одной сессии не меняют ответ.
Пусть A — множество сессий, открывших NEWS, B — множество сессий, открывших OLYMPIAD, а C — множество сессий, открывших RESULTS. Требуется вывести значение по формуле включения-исключения:
|A ∪ B ∪ C| = |A| + |B| + |C| - |A ∩ B| - |A ∩ C| - |B ∩ C| + |A ∩ B ∩ C|.
При равенстве идентификаторов в нескольких строках таблицы событий все такие строки относятся к одной и той же сессии и учитываются совместно. Пустые множества имеют размер 0.
Формат ввода
В первой строке даны два целых числа n и m — число строк в таблице сессий и число строк в таблице событий.
В следующих n строках записаны таблица сессий: session_id visitor_id.
В следующих m строках записана таблица событий: session_id page.
session_id и visitor_id — целые числа. page — строка из заглавных латинских букв. Среди строк таблицы сессий идентификаторы session_id не повторяются.
Формат вывода
Выведите одно целое число — количество зарегистрированных сессий, открывших хотя бы одну из трёх страниц NEWS, OLYMPIAD, RESULTS.
Дробная часть отсутствует, выводится целое число.
Ограничения
1 ≤ n ≤ 2000.
0 ≤ m ≤ 2000.
n + m ≤ 2000.
1 ≤ session_id, visitor_id ≤ 10^9.
Длина строки page составляет от 3 до 12 символов.
Каждая строка page состоит только из заглавных латинских букв.
Решить задачу с автопроверкой на Python →
Куда дальше
- Школьный этап ВсОШ по информатике — как устроен первый этап и план подготовки за четыре недели
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки
- Перечневые олимпиады: что это и что дают — весь перечень Минобрнауки: уровни, срок диплома, разрезы по предметам и классам