QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 2048 MB Total points: 100

#7669. Уменьшение лабиринта

Statistics

Jay управляет небольшим парком развлечений с разнообразными аттракционами. К сожалению, сейчас тяжёлые времена. Недавняя авария на американских горках, затопление туалетов и неприятный случай с клоуном испортили репутацию парка Jay. Платящих посетителей стало меньше, доходы упали, и для продолжения работы ему придётся сократить расходы.

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

Две комнаты $A$ и $B$ фактически одинаковы, если, оказавшись в комнате $A$ или $B$ (и зная карту лабиринта), вы не можете определить, начали ли вы в $A$ или $B$, только исследуя лабиринт. Выходы в коридоры равномерно расположены по периметру каждой комнаты, и вы не можете оставлять в комнате отметки или какие-либо предметы (в частности, вы не можете узнать, бывали ли здесь раньше). Единственный отличительный признак комнаты — число выходов. Коридоры также достаточно извилисты, чтобы быть неотличимыми друг от друга, но при входе в комнату вы знаете, по какому коридору пришли, поэтому можете немного ориентироваться по порядку коридоров вокруг комнаты.

Jay обратился за помощью в Association for Carnival Mazery. Это вы! Напишите программу, определяющую все множества фактически одинаковых комнат в лабиринте.

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

Входные данные содержат один тестовый пример. Первая строка содержит целое число $n$ — число комнат в лабиринте ($1 \le n \le 100$). Комнаты пронумерованы от $1$ до $n$. Далее идут $n$ строк, по порядку описывающих каждую комнату. Каждая строка содержит целое число $k$, означающее, что у этой комнаты $k$ коридоров ($0 \le k < 100$), а затем $k$ различных целых чисел — номера комнат, в которые ведут коридоры (по часовой стрелке, начиная с произвольной точки). Комнаты не соединяются сами с собой.

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

Для каждого максимального по включению множества фактически одинаковых комнат (кроме множеств размера $1$) выведите отдельную строку с номерами комнат в порядке возрастания. Упорядочьте множества по наименьшим номерам комнат. Если таких множеств нет, выведите none.

Примеры

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

13
2 2 4
3 1 3 5
2 2 4
3 1 3 6
2 2 6
2 4 5
2 8 9
2 7 9
2 7 8
2 11 13
2 10 12
2 11 13
2 10 12

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

2 4
5 6
7 8 9 10 11 12 13

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

6
3 3 4 5
0
1 1
1 1
2 1 6
1 5

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

none

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.