В языке программирования ОГОЛ вызывать
функции можно лишь из функций, которые описываются после описания той функции,
которая вызывается. В частности, функция не может вызывать себя.
Программист
Петя спроектировал программу, которая должна быть написана на этом языке. В
частности, в проекте указано, какие функции вызываются из каждой функции. Для
удобства Петя пронумеровал все функции числами от 1 до N.
Требуется написать программу, которая
определяет, в каком порядке функции должны быть описаны в программе на языке
ОГОЛ.
Формат входных данных:
В первой строке входного файла содержится число N
— количество
функций, которые должны быть в программе. Далее идут N строк, причем i-я из них содержит описание функций, которые должны
вызываться из i-й функции. Это описание содержит
сначала число
—
количество функций, которые вызываются из данной функции, а затем номера
вызываемых функций (одна и та же функция может вызываться из данной функции
несколько раз).
Формат выходных данных:
В выходной файл
необходимо вывести номера функций в том порядке, в каком они должны быть
описаны в программе. Если написать такую программу на языке ОГОЛ невозможно, в
выходной файл нужно поместить одно число 0.
Пример файлов входных и
выходных данных:
stdin
|
stdout
|
3
0
4 1 1 3 1
1 1
|
1 3 2
|
3
0
2 3 1
0
|
3 1 2
|
1
1 1
|
0
|
2
1 2
1 1
|
0
|