#LQB2026CBJ. 运动会

运动会

【问题描述】

小蓝的学校正在组织一年一度的运动会。本次运动会共有 NN 个班级参赛,其中第 ii 个班级报名了 aia_i 名学生。

为了保证比赛的公平性与观赏性,组委会决定从所有报名的学生中,选拔出 MM 名学生正式参加比赛。同时,为了避免某个班级人数过多,组委会规定:来自同一个班级的参赛人数不能超过 KK 个人。

现在,请你帮小蓝计算一下,一共有多少种选拔参赛学生的方案?两种选拔方案被视为不同,当且仅当至少有一名被选中的学生不同。由于方案数可能很大,请将结果对 998244353998244353 取模后输出。

【输入格式】

第一行包含三个正整数 N,M,KN, M, K,分别表示班级数、需要选拔的总人数,以及每个班级最多入选人数。

第二行包含 NN 个正整数 a1,a2,,aNa_1, a_2, \ldots, a_N,表示每个班级的报名人数。

【输出格式】

输出一行,一个整数,表示合法选拔方案数对 998244353998244353 取模后的结果。

测试数据

【样例输入】

3 4 2
2 3 2

【样例输出】

31

【样例说明】

三个班级分别报名 2,3,22, 3, 2 人,共有 77 名学生。若没有每班最多 22 人的限制,从 77 人中选 44 人共有 (74)=35\binom{7}{4} = 35 种方案。

唯一不合法的情况是第 22 个班级的 33 人全部被选中。此时还需要从第 11 个和第 33 个班级的共 44 名学生中选出 11 人,共 44 种不合法方案。

因此合法方案数为 354=3135 - 4 = 31

数据分布

【评测用例规模与约定】

对于 3030% 的评测用例,1N,M,K,ai201 \le N, M, K, a_i \le 20

对于 8080% 的评测用例,1N,M,K,ai5001 \le N, M, K, a_i \le 500

对于所有评测用例,1N,M,K,ai500001 \le N, M, K, a_i \le 50000,且 Mi=1NaiM \le \sum_{i=1}^N a_i