#P1680. 奇怪的分组

奇怪的分组

Description

v 神的班级共有 NN 个人,dm 同学想把同学分成 MM 组联络,要求第 ii 组的人数必须大于给定的正整数 CiC_i,求有多少不同的方案(两个是相同的方案当且仅当对于任意的一队 ii,两个方案的第 ii 组同学数量相等)。由于结果很大,所以你只需要输出模 109+710^9+7 的值。

Input Format

第一行两个整数 NNMM,后面有 MM 行,每行一个整数,表示 CiC_i

Output Format

仅有一行,一个整数,方案数模 109+710^9+7 的值。

10 3
1
2
3

3

Hint

样例解释

方案有三种,每组的个数分别是 (3,3,4)(3,3,4)(2,4,4)(2,4,4)(2,3,5)(2,3,5)

数据范围约定

对于 30%30\% 的数据,N,M10N,M\le 10

对于 60%60\% 的数据,N,M1000N,M\le 1000

对于 100%100\% 的数据,1N,M1061\le N ,M\le 10^61Ci10001\le C_i\le 1000

数据保证至少有一个方案。