Contest Duration: - (local time) (100 minutes) Back to Home
C - Filling 3x3 array /

Time Limit: 2 sec / Memory Limit: 1024 MB

問題文

6 個の整数 h_1, h_2, h_3, w_1, w_2, w_3 が与えられます。

• i=1,2,3 について、上から i 行目に書きこんだ数の和が h_i になる。
• j=1,2,3 について、左から j 列目に書きこんだ数の和が w_j になる。

さて、条件を満たす書きこみ方は全部で何通り存在しますか？

制約

• 3 \leq h_1, h_2, h_3, w_1, w_2, w_3 \leq 30
• 入力される値はすべて整数

入力

h_1 h_2 h_3 w_1 w_2 w_3


入力例 1

3 4 6 3 3 7


出力例 1

1


入力例 2

3 4 5 6 7 8


出力例 2

0


入力例 3

5 13 10 6 13 9


出力例 3

120


入力例 4

20 25 30 22 29 24


出力例 4

30613


Score : 300 points

Problem Statement

You are given six integers: h_1, h_2, h_3, w_1, w_2, and w_3.
Consider writing a positive integer on each square of a 3 \times 3 grid so that all of the following conditions are satisfied:

• For i=1,2,3, the sum of numbers written in the i-th row from the top is h_i.
• For j=1,2,3, the sum of numbers written in the j-th column from the left is w_i.

For example, if (h_1, h_2, h_3) = (5, 13, 10) and (w_1, w_2, w_3) = (6, 13, 9), then all of the following three ways satisfy the conditions. (There are other ways to satisfy the conditions.)

How many ways are there to write numbers to satisfy the conditions?

Constraints

• 3 \leq h_1, h_2, h_3, w_1, w_2, w_3 \leq 30
• All values in input are integers.

Input

Input is given from Standard Input in the following format:

h_1 h_2 h_3 w_1 w_2 w_3


Output

Print the number of ways to write numbers to satisfy the conditions.

Sample Input 1

3 4 6 3 3 7


Sample Output 1

1


The following is the only way to satisfy the conditions. Thus, 1 should be printed.

Sample Input 2

3 4 5 6 7 8


Sample Output 2

0


There may not be a way to satisfy the conditions.

Sample Input 3

5 13 10 6 13 9


Sample Output 3

120


Sample Input 4

20 25 30 22 29 24


Sample Output 4

30613