헨리는 스포츠의 역사, 그중에서도 축구의 역사를 연구하는 역사학자입니다. 그는 축구 대회의 순위표를 발견할 때마다 자신의 데이터베이스에 저장합니다.
최근 그는 어느 작은 대회의 순위표를 발견했습니다. 안타깝게도 각 경기의 결과는 소실되었고, 남아 있는 정보는 각 팀이 얻은 점수뿐이었습니다.
그는 이 대회의 경기들이 끝날 수 있었던 서로 다른 경우가 몇 가지인지 계산해 보기로 했습니다. 그는 경기의 구체적인 점수에는 관심이 없고, 오직 각 경기에서 누가 이겼는지에만 관심이 있습니다.
이 대회에는 다음 규칙이 적용되었습니다.
예를 들어, 팀이 3개이고 각 팀이 3점씩 얻었다면, 가능한 결과표는 정확히 두 가지입니다.
| 팀 | A | B | C | 점수 |
|---|---|---|---|---|
| A | - | 3 | 0 | 3 |
| B | 0 | - | 3 | 3 |
| C | 3 | 0 | - | 3 |
| 팀 | A | B | C | 점수 |
|---|---|---|---|---|
| A | - | 0 | 3 | 3 |
| B | 3 | - | 0 | 3 |
| C | 0 | 3 | - | 3 |
각 경기의 구체적인 점수는 무시하고, 주어진 점수 합계를 만들 수 있는 서로 다른 결과표의 개수를 계산하도록 헨리를 도와주세요.
첫째 줄에 대회에 참가한 팀의 수를 나타내는 정수 $n$이 주어집니다 ($2 \le n \le 8$). 다음 $n$개의 줄에는 각 팀이 얻은 점수를 나타내는 정수가 한 줄에 하나씩 주어집니다.
주어진 점수 합계를 만들 수 있는 결과표의 개수를 정수 하나로 출력합니다. 그러한 결과표가 적어도 하나 존재함이 보장됩니다.