Уникальные метки панелей по запросу
Условие
На солнечных электростанциях инвентарные метки панелей вводятся вручную. Одна и та же метка может быть записана разным регистром и с лишними пробелами по краям.
Нормализованной меткой называется строка, полученная удалением пробелов в начале и конце строки и переводом английских букв в нижний регистр. Например, строки PN-17, pn-17 и Pn-17 после нормализации совпадают.
Дан список записей о панелях и список названий электростанций в запросе. Требуется найти число различных нормализованных меток панелей на всех электростанциях из запроса. Запись с меткой - после нормализации означает пропуск метки и не учитывается. Искомое значение равно мощности множества { p : существует запись (s, p), s принадлежит Q, p не равно "-" }, где Q — множество нормализованных названий электростанций из запроса.
При совпадении нормализованных меток панелей они учитываются как одна уникальная метка. Если ни одна запись не относится к электростанциям из запроса или все найденные метки пропущены, ответ равен 0.
Формат ввода
В первой строке даны два целых числа n и q — число записей о панелях и число названий электростанций в запросе.
В следующих n строках записаны данные в формате название_электростанции;метка_панели. Символ ; является разделителем и не входит в названия или метки.
В следующих q строках записаны названия электростанций из запроса, по одному в строке.
Формат вывода
Выведите одно целое число — количество уникальных нормализованных меток панелей для электростанций из запроса.
Дробной части в ответе нет: выведите целое число без округления.
Ограничения
1 ≤ n ≤ 1000.
1 ≤ q ≤ 1000.
Длина каждой строки названия электростанции и каждой непустой метки, включая пробелы по краям, составляет от 1 до 30 символов.
Названия и метки состоят из английских букв, цифр, дефисов и пробелов. После удаления пробелов по краям название электростанции и любая непустая метка содержат хотя бы один символ.
Метка с пропуском имеет вид -, возможно с пробелами по краям.
Решить задачу с автопроверкой на Python →
Куда дальше
- С нуля до олимпиады: маршрут — сколько занимает язык, какие приёмы нужны и к какому этапу это ведёт
- БВИ по олимпиадам: в какие вузы берут — правила приёма вузов, разобранные построчно, со ссылкой на приказ у каждой строки
- Перечневые олимпиады: что это и что дают — весь перечень Минобрнауки: уровни, срок диплома, разрезы по предметам и классам