#ATarc067c. [ARC067E] Grouping
[ARC067E] Grouping
题目描述
有 个人,编号从 到 。你需要将他们分成若干组,使得满足以下两个条件:
- 每个组的人数不少于 人且不多于 人。
- 设 表示恰好有 个人的组的数量,则对于所有的 ,要么 ,要么 。
请你计算有多少种不同的分组方式。若两种分组方式存在一对人,在一种分组中他们在同一组,另一种分组中他们不在同一组,则认为这两种分组方式不同。答案可能很大,请输出对 取模的结果。
输入格式
输入一行,包含五个整数:
输出格式
输出满足条件的分组方式数,对 取模。
样例 1
输入
3 1 3 1 2
输出
4
样例 2
输入
7 2 3 1 3
输出
105
样例 3
输入
1000 1 1000 1 1000
输出
465231251
样例 4
输入
10 3 4 2 5
输出
0
说明/提示
限制
样例解释 1
有以下 种分组方式:
像 这样的分组方式虽然满足第一个条件,但不满足第二个条件,因此不计入答案。
样例解释 2
除了将 个人分成两个 人组和一个 人组之外,没有其他合适的分组方式。这样的分组方式共有 种。
样例解释 4
答案有可能为 。
由 ChatGPT 4.1 翻译