Задача B. Синонимы
Задачу добавил: alef
Успешно сдано решений: 28
Время на тест 4 с, память 256 Мб
Кеша обратил внимание, что в глоссарии не так уж мало терминов-синонимов. Например, «генная инженерия» и «генетическая инженерия» обозначают одно и то же. Но эти термины хотя бы не так удалены друг от друга в алфавитном порядке, в отличие, например от терминов «кроссинговер» и «перекрёст».
При этом (глоссарий же составляло несколько разных специалистов) описание терминов-синонимов несколько отличалось. Впрочем, отличия были стилистические, а набор других терминов, используемых для описания, одинаков для всех терминов-синонимов. Более того, в описании некоторого термина в обязательном порядке упоминаются все его синонимы.
Кеша решил составить списки терминов-синонимов, чтобы в дальнейшем объединить их описания. Ваша задача — получить эти списки.
Формат входного файла input.txt
Первая строка — целое число N (2 ≤ N ≤ 1000) — количество терминов в глоссарии
Каждая из следующих N строк содержит последовательность номеров страниц через пробел, на которые в описании термина с соответствующим номером есть гиперссылки (первая строка из этих N строк описывает первый термин, вторая — второй и т.д.). Завершается последовательность нулем.
Номера страниц в последовательности могут повторяться (другой термин может встречаться в описании несколько раз), также в последовательности может присутствовать номер страницы с самим термином (для перемещения между фрагментами страницы).
Формат выходного файла output.txt
Первая строка — целое число T — количество найденных групп терминов-синонимов
Каждая из следующих T строк содержит через пробел номера терминов, являющихся синонимами друг друга. Номера должны быть упорядочены по возрастанию.
Пример входного файла
10
3 2 1 1 3 8 0
4 6 6 6 2 4 0
1 8 3 2 2 1 8 0
4 4 0
1 3 8 6 9 1 10 6 0
7 0
0
1 3 2 0
3 8 5 5 5 10 6 1 0
7 0
Пример выходного файла
2
1 3 8
5 9