#P5058. 「FJSC2018TGD5T1」Haiku

「FJSC2018TGD5T1」Haiku

Description

对于一个长度问 nn 的数组 AA ,设第 ii 个元素为 AiA_i0i<n0 \le i < n)。

问有多少个长度为 nn 的数组 AA ,满足 1Ai101 \le A_i \le 10 ,且这个数组是诗。

给定 x,y,zx, y, z,一个长度为 nn 的数组是诗当且仅当存在 i,j,k,l(0i<j<k<lN)i, j, k, l (0 \le i < j < k < l \le N) 使得:

  • ai+ai+1+...+aj1=xa_i+a_{i + 1}+ ... +a_{j - 1} = x

  • aj+aj+1+...+ak1=ya_j + a_{j + 1} + ... + a_{k - 1} = y

  • ak+ak+1+...+al1=za_k + a_{k + 1}+ ... + a_{l - 1} = z

Input Format

从文件 haiku.in 读入数据。


n x y z

Output Format

向文件 haiku.out 输出数据。

输出满足条件的数组数量 mod109+7mod 10^9 + 7

Sample

样例输入1

3 5 7 5

样例输出1

1

样例1解释

只有一种可能,就是 [5,7,5][5, 7, 5]

样例输入2

4 5 7 5

样例输出2

34

Hint

| part | nn | xx | yy | zz |

| ------ | ---------------- | --------------- | --------------- | --------------- |

| 20%20\% | | x=1x = 1 | y=1y = 1 | z=1z = 1 |

| 50%50\% | | x=1x=1 | y=1y=1 | |

| allall | 1n401 \le n \le 40 | 1x51 \le x \le 5 | 1y71 \le y \le 7 | 1z51 \le z \le 5 |