순위 매기기
시간 제한2초메모리 제한512 MB
탑 a가 b보다 높다는 비교 N-1개가 주어지고, 각 탑이 자신보다 높은 탑과 비교되는 횟수가 최대 한 번일 때, 이 사실과 모순되지 않는 순위표의 가짓수를 센다.
문제
이쿠타가 사는 마을에는 개의 탑이 있다. 각 탑에는 0부터 까지의 서로 다른 번호가 붙어 있으며, 번호 인 탑을 탑 라고 부른다. 호기심 많은 이쿠타는 개 탑의 높이에 흥미를 느껴 그 대소 관계를 나타내는 표 를 만들기로 했다. 는 개의 원소를 가지며, 각 원소 는 다음과 같이 정의된다.
-
탑 의 높이가 탑 의 높이보다 작다
-
탑 의 높이와 탑 의 높이가 같다
-
탑 의 높이가 탑 의 높이보다 크다
이쿠타는 표 를 만들기 위한 조사로 두 탑을 골라 높이를 비교하는 일을 번 반복했다.
이쿠타의 조사에 관해 다음이 알려져 있다.
-
번째 비교 에서 탑 와 탑 를 골랐다면 탑 의 높이가 탑 의 높이보다 컸다. 즉 , 이었다.
-
각 탑은 자기 자신보다 큰 탑과 많아야 한 번만 비교되었다.
아쉽게도 이쿠타의 조사 정보만으로 표 의 내용을 유일하게 결정할 수 있는 것은 아니다. 표 가 이쿠타의 조사와 모순되지 않고, 가 정의되는 탑 높이 조합이 존재할 때 를 올바른 표라고 하자. 올바른 표로 가능한 것이 몇 가지인지 계산해 이쿠타에게 알려 주자.
단, 비교된 두 탑의 높이는 서로 다르지만 모든 탑의 높이가 서로 다르다고는 할 수 없다.
입력
입력은 다음 형식으로 주어진다.
...
은 탑의 수를 나타낸다. , ()는 탑 가 탑 보다 높다는 것을 나타낸다.
출력
가능한 올바른 표 의 개수를 1,000,000,007로 나눈 나머지를 출력하라.
제한
입력의 각 변수는 다음 조건을 만족한다.
-
-
-
-
서로 다른 탑이 같은 높이일 수도 있다.
-
이쿠타의 조사 결과 자체는 모순이 없으며, 적어도 하나의 조사 결과와 모순되지 않는 표 가 존재한다.