음모

아직 제출이 없습니다시간 제한3초메모리 제한128 MB

문제

적대국 비토티아가 바이트오티아를 기습 공격해 영토의 상당 부분을 점령했다. 바이트오티아의 왕 바이트아사르는 점령지에서 저항 운동을 조직하려 한다. 그는 먼저 저항 운동의 핵심이 될 사람들을 골랐고, 이들을 두 그룹으로 나누려고 한다.

  • 음모자 그룹: 점령지 안에서 직접 활동한다.
  • 지원 그룹: 자유 바이트오티아 안에서 활동한다.

이 분할은 다음 조건을 모두 만족해야 한다.

  • 지원 그룹에 속한 두 사람은 서로 반드시 아는 사이여야 한다. 그래야 그룹이 효율적으로 협력할 수 있다.
  • 음모자 그룹에 속한 두 사람은 서로 아는 사이가 아니어야 한다.
  • 두 그룹 모두 비어 있으면 안 된다. 즉 음모자와 지원 그룹 구성원이 각각 최소 한 명은 있어야 한다.

바이트아사르는 고른 사람들을 이 두 그룹으로 나누는 방법이 몇 가지인지, 그리고 무엇보다 그러한 분할이 가능하기는 한지 알고 싶어 한다. 그를 도와 이 수를 구하라.

입력

첫째 줄에 저항 운동에 참여하는 사람 수를 나타내는 정수 nn (2n50002 \le n \le 5000)이 주어진다. 사람들은 11번부터 nn번까지 번호가 매겨져 있다.

이어지는 nn개의 줄은 각 사람이 아는 사람을 설명한다. 그중 ii번째 줄은 먼저 사람 ii가 아는 사람의 수 kik_i (0kin10 \le k_i \le n-1)로 시작하고, 이어서 그 사람들의 번호 ai,1,ai,2,,ai,kia_{i,1}, a_{i,2}, \dots, a_{i,k_i}가 오름차순으로 주어진다 (1ai,jn1 \le a_{i,j} \le n, ai,jia_{i,j} \ne i).

아는 관계는 상호적이다. 즉 사람 xx가 사람 ii의 목록에 있으면, 사람 ii도 사람 xx의 목록에 있다.

출력

위 조건을 모두 만족하도록 고른 사람들을 음모자 그룹과 지원 그룹으로 나누는 방법의 수를 정수 하나로 출력한다. 조건을 만족하는 분할이 하나도 없으면 00을 출력한다.

힌트

위 예시에서는 유효한 분할이 세 가지 있다. 음모자 그룹은 11번과 44번, 22번과 44번, 또는 44번 한 명이 될 수 있다.