#L3569. 「COCI 2021.11」磁铁

「COCI 2021.11」磁铁

题目描述

译自 COCI 2021/2022 Contest #2 T4「Magnet」

小 M 玩腻了例如狗狗币和比特铑币这种满是黑幕的加密货币,于是决定去玩磁铁。他有 nn 个不同的磁铁以及一个有 ll 个放磁铁的槽的板子。他的板子上每个槽的距离正好是一厘米,各个磁铁有各自的吸引半径 rir_i,能够吸引距离严格小于 rir_i 的磁铁,且不受其他磁铁的吸引半径影响。存在多个磁铁吸引半径相同,但是我们认为它们是不同的磁铁。

小 M 并不喜欢磁铁互相吸引,所以他想知道磁铁互不吸引的放置方案数。所有磁铁都要放在板子上,每个槽最多放一个磁铁。如果存在一个磁铁放置的位置不同,我们认为这两个方案是互不相同的。考虑到答案可能很大,请输出答案模 109+710^9+7


输入格式

第一行两个正整数 nnll,表示磁铁的数量和空的槽数。

第二行 nn 个正整数 rir_i,表示磁铁 ii 的吸引半径。


输出格式

输出磁铁互不吸引的放置方案数模 109+710^9+7


样例 1

输入

1 10
10

输出

10

样例 2

输入

4 4
1 1 1 1

输出

24

所有磁铁的排列均合法,因为没有两个磁铁能相互吸引。


样例 3

输入

3 4
1 2 1

输出

4

如果我们把磁铁编号为 112233,用 _ 表示空位,所有合法的排序有 13_213\_2, 31_231\_2, 2_132\_13, 2_312\_31


数据范围与提示

对于 100%100\% 的测试数据,有 1n501 \le n \le 50nl10000n \le l \le 10\,000

子任务 分值 限制
1 10 r1=r2==rnr_1=r_2=\ldots=r_n
2 20 1n101\le n\le 10
3 30 1n301\le n\le 30, nl300n\le l\le 300
4 50 无额外限制