В поисках неизведанного
시간 제한2초메모리 제한1024 MB
인접 리스트로 주어진 무향 단순 그래프에서 해밀턴 경로의 개수를 2로 나눈 나머지를 구한다.
문제
Диппер и Мэйбл решили еще раз обследовать Гравити Фолз. Надо сказать, что Гравити Фолз не сильно отличается по общему устройству от других городов --- он также представляет из себя совокупность домов, соединенных улицами. Причем для каждой пары домов существует не более одной улицы их соединяющей. Да и петель, то есть улиц, соединяющих дом с самим собой, тоже нет. Также известно, что если по улице можно добраться от дома А до дома В, то и от дома В до дома А можно добраться по этой же улице.
Сейчас Диппер и Мэйбл решили составить список маршрутов, которые бы посещали каждый дом ровно один раз. (То есть если в городе домов, то в маршруте будет ровно различных чисел --- номеров домов, и между любыми двумя соседними будет существовать одна улица). Диппер и Мэйбл считают два маршрута разными, если в них разные последовательности домов.
Список оказался довольно большим. К тому же Диппер и Мэйбл не уверены, что он правильный. Для того чтобы проверить выкладки, они хотели бы для начала знать количество таких путей. Без Вас им точно не обойтись!
입력
В первой строке входного файла дано натуральное число --- количество домов (). Далее следуют строк. Каждая -ая строка задана в следующем формате: первое число в строке --- число соседних (то есть связанных улицей) домов для -го дома, далее перечислены различных чисел --- номера соседних с -ым домов.
출력
Выведите одно число --- количество вышеописанных маршрутов. Поскольку данное число может быть довольно большим, выведите его по модулю .