#T1269. [GESP202312 八级T1] 奖品分配

[GESP202312 八级T1] 奖品分配

题目背景

2023 年 12 月 GESP C++ 八级编程第 1 题

题目描述

TT 个班级需要分配奖品。对每个班级,有 NN 名同学,学号从 00N1N-1,以及 MM 种奖品,第 ii 种奖品共有 aia_i 个。保证奖品总数为 NNN+1N+1

每位同学必须恰好获得一个奖品。只要存在一名同学获得的奖品种类不同,就认为是不同方案。请对每个班级求分配方案数,并对 109+710^9+7 取模。

输入格式

第一行输入整数 TT。 接下来 TT 行,每行先输入两个正整数 N,MN,M,再输入 MM 个正整数 a0,a1,ldots,aM1a_0,a_1,ldots,a_{M-1}

输出格式

输出 TT 行,每行一个整数,表示对应班级的方案数对 109+710^9+7 取模后的结果。

3
3 2 1 2
3 2 1 3
5 3 3 1 1
3
4
20
5
100 1 100
100 1 101
20 2 12 8
123 4 80 20 21 3
999 5 101 234 499 66 99
1
1
125970
895031741
307187590

数据范围与提示

  • 对于 30%30\% 的测试点,保证 N10N\le 10
  • 另有 30%30\% 的测试点,保证 M=2M=2
  • 对于全部测试点,保证 1T10001\le T\le 10001N10001\le N\le 10001M10011\le M\le 1001ai1a_i\ge1,且 NaiN+1N\le\sum a_i\le N+1

来源

GESP 2023 年 12 月 C++ 八级 T1