해안선
시간 제한1초메모리 제한1024 MB
볼록 다각형 위 도시들을 교차 없이 한 번씩 지나는 해밀턴 경로 중 1번에서 출발하고 주어진 특별한 도로를 반드시 쓰는 경로의 수를 센다.
문제
개의 도시가 해안선을 따라 원형으로 배치되어 있다. 도시는 시계 방향으로 번부터 번까지 번호가 차례로 붙어 있다. 모든 도시 쌍에 대해, 해당 두 도시를 연결하는 양방향 직선 도로가 존재한다.
이 수많은 도로들 중, 번 도시와 번 도시를 잇는 도로를 특별한 도로라고 부른다. 이 특별한 도로는 번 도시가 아닌 두 도시를 이으며, 경치가 가장 아름다운 도로로 알려져 있다.
정서는 다음과 같은 방식으로, 도로만을 이용해 이 도시들을 여행하려 한다.
- 여행은 번 도시에서 출발하며, 출발과 동시에 번 도시는 이미 방문한 것으로 간주한다.
- 여행 중에는 번 도시를 포함한 이미 방문한 도시를 다시 방문해서는 안 되며, 모든 도시를 정확히 한 번씩 방문해야 한다.
- 여행 중 이용하는 어떤 두 도로도 서로 교차하지 않아야 한다.
- 여행 중에는 반드시 특별한 도로를 한 번 이용해야 한다. 단, 특별한 도로를 이용하는 방향은 중요하지 않다.
위 조건을 모두 만족하는 이동 경로의 수를 구하시오.
입력
첫째 줄에 도시의 수 이 주어진다. ()
둘째 줄에 특별한 도로가 잇는 두 도시의 번호 , 가 공백으로 구분되어 주어진다. (; )
출력
조건을 만족하는 모든 경로의 수를 로 나눈 나머지를 출력한다.