영 다이어그램은 다음 조건을 지키면서 박스를 배열한 것이다.
위에서부터 행의 길이가 3, 2, 2, 1인 배열은 영 다이어그램이다.
[][][]
[][]
[][]
[]
영 태블로는 영 다이어그램의 박스에 다음 조건을 지키면서 수를 채운 것이다.
N=3이고 행의 길이가 3, 2, 1인 영 다이어그램이라면 아래 배치는 세 조건을 모두 만족한다.
1 1 2
2 3
3
N과 영 다이어그램의 형태가 주어지면 영 태블로를 만드는 방법의 수를 구하는 프로그램을 작성하시오.
입력은 여러 개의 테스트 케이스로 이루어지고, 파일의 끝까지 이어진다. 각 테스트 케이스는 두 줄이다.
첫째 줄은 영 다이어그램의 형태를 나타낸다. 맨 앞의 정수 k는 행의 개수이고 1≤k≤7이다. 이어서 각 행에 있는 박스의 개수 l1,l2,…,lk가 k개 주어지며 7≥l1≥l2≥⋯≥lk≥1을 만족한다.
둘째 줄에는 N이 주어지고 k≤N≤7을 만족한다.
각 테스트 케이스마다 만들 수 있는 영 태블로의 개수를 한 줄에 하나씩 출력한다.