두 행 표 채우기
시간 제한1초메모리 제한256 MB
고정된 수와 공통 수를 두 행에 오름차순으로 배치해 각 열이 위에서 아래로 증가하는 경우의 수를 셉니다.
문제
양의 정수 이 주어진다. 정수 을 세 집합 , , 로 나눈다. 다음 조건을 모두 만족하도록 2행 열짜리 표를 채우는 방법의 수를 구한다.
- 표의 각 칸에 정수를 하나씩 적는다.
- 집합 의 정수는 첫째 행에 적는다.
- 집합 의 정수는 둘째 행에 적는다.
- 집합 의 정수는 어느 행에 적어도 된다.
- 각 행의 수는 왼쪽에서 오른쪽으로 갈수록 커진다.
- 각 열의 수는 위에서 아래로 갈수록 커진다.
부터 까지의 정수는 표 전체에 정확히 한 번씩 나타난다.
, , , 인 경우 조건을 만족하는 표는 다음 두 가지뿐이다.
1 2 3 5
4 6 7 8
1 2 3 6
4 5 7 8
입력
첫째 줄에 정수 이 주어진다. ()
둘째 줄에 집합 의 원소 개수 과 의 원소가 차례로 주어진다. ()
셋째 줄에 집합 의 원소 개수 와 의 원소가 차례로 주어진다. ()
와 는 서로소이고, 두 집합의 원소는 모두 이상 이하의 정수다. 한 줄 안의 원소는 정렬되어 있지 않을 수 있다. 에도 에도 속하지 않는 정수가 집합 를 이룬다.
출력
조건을 만족하는 표의 개수를 한 줄에 출력한다. 그런 표가 하나도 없으면 을 출력한다.