Coding is the closest thing we have to superpower !
描述
超能侠出门旅游带回了许多土特产,他想知道,把这些特产分给 n 个同学,一共有多少种不同的分法?当然,超能侠不希望任何一个同学因为没有拿到特产而感到失落,所以每个同学都必须至少分得一个特产。
例如,超能侠带来了 2 袋麻花和 1 袋包子,分给 A 和 B 两位同学,那么共有 4 种不同的分配方法:
A:麻花, B:麻花、包子
A:麻花、麻花, B:包子
A:包子, B:麻花、麻花
A:麻花、包子, B:麻花
输入
第一行是同学的数量 n 和特产的数量 m。
第二行包含 m 个整数,表示每一种特产的数量。
n, m 不超过 1000 ,每一种特产的数量不超过 1000。
输出
输出一行,不同分配方案的总数。
由于输出结果可能非常巨大,你只需要输出最终结果
\bmod\ {10^9+7} 的数值就可以了。
样例
输入
5 4 1 3 3 5
输出
384835
标签