Задача №114898. Доклад инвесторам

В компании работают \(n\) бурундуков (\(n \ge 2\)), пронумерованных целыми числами от \(1\) до \(n\). Бурундук с номером \(1\) является основателем компании, а каждый из остальных бурундуков имеет ровно одного непосредственного начальника. Иными словами, иерархия бурундуков представляет собой корневое дерево, где родитель вершины является её начальником, а дети вершины являются её подчинёнными. Бурундуки, имеющие подчинённых, называются менеджерами , а остальные — консультантами . Структура компании такова, что каждый менеджер имеет не более \(8\) подчинённых. Обратите внимание, что основатель компании также является менеджером.

Основатель компании решил составить доклад для инвесторов о последних проделанных улучшениях разрабатываемого продукта. Каждое улучшение является результатом работы кого-то из консультантов компании. Все улучшения пронумерованы в хронологическим порядке их совершения.

Для каждого из консультантов известен список улучшений, сделанных этим консультантом. Каждый консультант обязан выбрать одно из этих улучшений и сделать о нём доклад своему менеджеру. Таким образом, доклад любого консультанта будет состоять ровно из одного улучшения.

Каждый менеджер, в том числе основатель компании, должен сделать доклад, представляющий собой объединение докладов всех его подчиненных. Для этого он берёт доклады, полученные от подчинённых, и записывает их подряд без изменений в некотором порядке. Например, если первый доклад состоит из улучшений \([1, 3]\), а второй — из улучшений \([2, 4, 10]\), то в результате объединения может получиться доклад \([2, 4, 10, 1, 3]\), либо доклад \([1, 3, 2, 4, 10]\), никакие другие доклады получиться не могут.

Основатель компании стремится рассказать об улучшениях максимально логично, поэтому он хочет, чтобы в его докладе улучшения шли в хронологическом порядке, то есть по возрастанию номеров. Помогите консультантам выбрать, о каком улучшении они должны рассказать, а менеджерам выбрать, в каком порядке им располагать доклады подчиненных при объединении, чтобы в итоговом докладе основателя компании вошедшие в него улучшения шли в хронологическом порядке.

Входные данные

В первой строке содержится целое число \(n\) (\(2 \leq n \leq 100\,000\)) — количество бурундуков в компании. Далее следуют \(n\) описаний бурундуков, по одному в строке:

  • если бурундук является менеджером, то описание начинается с числа \(1\), затем следует число \(k_i\) — количество непосредственных подчинённых у этого бурундука (\(1 \le k_i \le 8\)), а затем следуют \(k_i\) различных чисел от \(2\) до \(n\) — номера бурундуков, которые являются его подчинёнными;

  • если бурундук является консультантом, то описание начинается с числа \(2\), затем следует число \(m_i\) — количество улучшений, о которых этот консультант может рассказать, а затем следуют \(m_i\) различных целых чисел от \(1\) до \(100\,000\) — номера улучшений.

Бурундук с номером \(1\) (основатель компании) всегда является менеджером, а каждый из остальных бурундуков упомянут в качестве подчинённого ровно один раз и прямо или косвенно подчинен основателю компании.

Сумма чисел \(m_i\) по всем консультантам не превосходит \(100\,000\). Гарантируется, что никакое улучшение не было сделано двумя различными консультантами, то есть все упомянутые всеми консультантами улучшения различны.

Выходные данные

Если составить доклад требуемым образом невозможно, выведите « No ».

Если доклад составить возможно, выведите « Yes ». В этом случае затем вы можете вывести сертификат , который описывает для каждого из бурундуков в порядке их номеров следующее:

  • если бурундук является менеджером, то нужно вывести список его подчиненных в том порядке, в котором требуется расположить их доклады;

  • если бурундук является консультантом, то нужно вывести номер улучшения, о котором ему нужно рассказать в своем докладе.

Особенность этой задачи заключается в следующем: вам разрешается как выводить сертификат, так и не выводить его. Если решение не выводит сертификат, но правильно определяет возможность составления доклада, оно получит часть баллов за тест.

Обратите внимание, что вывод некорректного сертификата приводит к вердикту « Неправильный ответ » и нулю баллов за этот тест, несмотря на правильность определения возможности составления доклада.

Примечание

Во втором примере не сделан вывод сертификата, что соответствует частичному решению.

В третьем примере каждый из консультантов сделал ровно одно улучшение, поэтому выбор улучшений однозначен.

У третьего менеджера есть два возможных варианта доклада: \([1, 3]\) или \([3, 1]\).

У первого менеджера есть четыре возможных варианта доклада с учетом всех возможностей доклада третьего менеджера: \([1, 3]\) + \([2]\) = \([1, 3, 2]\), \([2]\) + \([1, 3]\) = \([2, 1, 3]\), \([3, 1]\) + \([2]\) = \([3, 1, 2]\) и \([2]\) + \([3, 1]\) = \([2, 3, 1]\), но ни в одном из этих докладов улучшения не идут в хронологическом порядке.

Система оценки

Если во всех тестах подзадачи правильно определена возможность составления доклада, а также во всех тестах, где доклад возможен, предъявлен верный сертификат, за подзадачу выставляется полный балл.

В противном случае, если во всех тестах подзадачи правильно определена возможность составления доклада, и на любой тест сертификат либо верный, либо отсутствует, за подзадачу выставляется частичный балл. Обратите внимание, что подзадачи, зависящие от неё, в таком случае будут запущены для тестирования и даже могут быть оценены в полный балл.

Обозначим за \(K\) максимальное количество непосредственных подчинённых у бурундуков-менеджеров, т.е. \(K = \max k_i\). Также обозначим суммарное количество улучшений у бурундуков-консультатов за \(\sum m_i\).

Баллы Ограничения
Подз. Частичные Полные \(n\), \(\sum m_i\) \(K\) Необх. подзадачи Информация о
проверке
1 9 18 \(n, \sum m_i \leq 10\) \(K \le 2\) первая ошибка
2 3 6 \(n, \sum m_i \leq 20\) \(K \le 8\) У, 1 первая ошибка
3 2 4 \(n, \sum m_i \leq 100\) \(K \leq 2\) 1 первая ошибка
4 2 4 \(n, \sum m_i \leq 100\) \(K \leq 5\) У, 1, 3 первая ошибка
5 2 4 \(n, \sum m_i \leq 100\) \(K \le 8\) У, 1–4 первая ошибка
6 2 4 \(n, \sum m_i \leq 500\) \(K \leq 2\) 1, 3 только баллы
7 2 4 \(n, \sum m_i \leq 500\) \(K \leq 5\) У, 1, 3, 4, 6 только баллы
8 2 4 \(n, \sum m_i \leq 500\) \(K \le 8\) У, 1–7 только баллы
9 4 8 \(n, \sum m_i \leq 2000\) \(K \leq 2\) 1, 3, 6 только баллы
10 3 6 \(n, \sum m_i \leq 2000\) \(K \leq 5\) У, 1, 3, 4, 6, 7, 9 только баллы
11 3 6 \(n, \sum m_i \leq 2000\) \(K \le 8\) У, 1–10 только баллы
12 6 12 \(n, \sum m_i \leq 100\,000\) \(K \leq 2\) 1, 3, 6, 9 только баллы
13 3 6 \(n, \sum m_i \leq 100\,000\) \(K \leq 5\) У, 1, 3, 4, 6, 7, 9, 10, 12
только баллы
14 7 14 \(n, \sum m_i \leq 100\,000\) \(K \le 8\) У, 1–13 только баллы
Примеры
Входные данные
6
1 3 5 4 6
2 3 10 61 60
2 2 80 20
2 2 40 70
1 2 3 2
2 4 30 90 91 92
Выходные данные
Yes
5 6 4
10
20
40
2 3
30
Входные данные
3
1 2 2 3
2 1 1
2 1 2
Выходные данные
Yes
2 3
1
2
Входные данные
5
1 2 2 3
2 1 2
1 2 4 5
2 1 1
2 1 3
Выходные данные
No
Сдать: для сдачи задач необходимо войти в систему