D4. фанатам стратегий 3 (7 )
данный шаг отличается от предыдущего формулировкой ограничений на входные данные. перед проверкой решения с формулировкой ограничений из этого шага, убедитесь, что это решение проходит и на предыдущем шаге.
к добавлено примечание!
вскоре стало понятно, что всё совсем не просто. нельзя взять и построить здание. их в этой игре ещё и открыть нужно.
новое здание типа
a
можно построить, только если на нашей базе функционирует хотя бы по одному новому зданию из списка необходимых зданий здания типа
a
.
сколько на самом деле нам придётся построить зданий (не считая электростанций)? какие они? в каком порядке их строить? ваша – найти ответы на эти вопросы.
примечание
гарантируется, что существует такая последовательность постройки зданий, что здания всех типов можно построить.
формат входных данных
в первой строке записаны три целых числа
n, m и t
(1≤m≤n≤5⋅10^4; 1≤t≤2)
– количество различных типов новых зданий в игре, количество новых зданий, которые нужно построить, и номер формата выходных данных.
в следующей строке записаны
m
названий типов зданий, разделённых пробелами – требуемые для обеспечения устойчивой обороны здания. гарантируется, что строка не содержит одинаковых типов зданий.
далее идёт
n
блоков по
2
строки следующего вида:
в первой строке – название типа здания.
во второй – длина списка необходимых зданий для здания данного типа и сам список необходимых зданий. гарантируется, что список не содержит одинаковых типов зданий.
сумма длин списков необходимых зданий не превышает
5⋅10^4.
название каждого типа здания состоит только из латинских букв и имеет длину не более десяти символов.
формат выходных данных
если
t=1
, то выведите одно число – минимальное количество зданий, которые нужно построить.
если
t=2
, то в первой строке выведите одно число – минимальное количество зданий, которое необходимо построить, а во второй –
k
названий зданий, которые нужно построить, в том порядке, в котором их нужно строить. если существует несколько подходящих последовательностей – выведите любую из них.
sample input 1:
13 5 2
refinery vehicle repair palace turret
constryard
0
windtrap
1 constryard
refinery
1 windtrap
outpost
1 windtrap
silo
2 refinery constryard
vehicle
3 refinery windtrap outpost
barracks
2 constryard outpost
wall
1 outpost
turret
1 outpost
starport
2 silo refinery
repair
1 vehicle
hitech
3 vehicle wall outpost
palace
1 starport
sample output 1:
10
constryard windtrap refinery outpost silo vehicle turret starport repair palace
104
341
Ответы на вопрос:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
btrawee3402.03.2021 15:14
-
romazan421.01.2022 01:27
-
daria20020504.01.2023 02:08
-
аноним123456789101115.08.2021 03:49
-
lenokv05.02.2021 22:27
-
operat0r01.06.2021 23:24
-
Есенин626125.07.2021 08:15
-
marynochka1009211.08.2021 07:20
-
7gklass201725.06.2021 08:17
-
Gurusergo23.09.2021 14:27
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.