#Lutece2776. 皇室战争 2

皇室战争 2

Migrated from Lutece 2776 皇室战争 2

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

注意:如果有恶意使用此题卡评测行为的同学将予以处罚

在分服后,为了调动部落玩家的积极性,小K决定举办一场锦标赛来鼓动大家的积极性。

但很遗憾的是,锦标赛只有 nn 个人参加,比赛进行了很多轮,每个人取得了 a[i]a[i] 场胜利。

但在小K准备发奖励时,他发现,发奖励的系统也因为分服出现了bug。

奖励系统分为两大部分组成,第一部分是相抵,即每次随机选取一个现在仍有胜场的人,将其胜场减去1,相抵操作要执行且必须执行 kk 次。

我们定义执行完操作后的每个人的胜场变为 b[i]b[i]

注意:如果此时存在 b[i]=0b[i]=0 ,则无法进入到第二部分,也无法正常发奖(因为要保证每个人都有奖,所以经历完相抵操作后,不能有人的胜场来到 00

第二部分是阶梯发奖,但只有满足 mex(b)>max(b)mex(b)>\max(b) (即从 11max(b)\max(b) 中的每一个数都需要在 bb 中出现)时,奖励系统才会给每一个人发奖。

注意:如果相抵操作未执行完 kk 次,那么系统也将不会进入第二部分,自然无法正常发奖

现在小K想知道奖励系统能正常发奖的概率是多少。

Input

第一行输入两个整数 n,k(1n50,1k50)n,k(1\le n \le 50,1\le k\le 50),表示参加的人的数量和相抵操作的执行次数。

第二行输入 nn 个由空格隔开的整数ai(1ai50)a_i(1 \le a_i \le 50),表示每个人的胜利数。

Output

在一行中输出一个整数,表示发生概率对 10000000071000000007 取模后的结果。

具体来说,如果概率的最简分数表示为 a/ba/b (a0,b1,gcd(a,b)=1)(a\ge0,b\ge 1,\gcd(a,b)=1),那么你需要输出

a×b1000000005mod1000000007a×b^{1000000005}\mod 1000000007

Samples

3 3
2 3 3
444444448
12 12
1 2 3 4 5 6 7 8 9 10 11 12
589642000

Constraints

样例1的解释:最终答案为 49\frac{4}{9}

Resources

2022 UESTC ICPC Training for Dynamic Programming