题目描述
黑板上写有一个由正整数组成的集合。最初,黑板上写有集合 S={1,2,…,A,A+1,A+2,…,A+B}。
高桥君希望通过以下操作 N−1 次,将黑板上的集合变为 N 个:
- 从黑板上写着的整数集合中,选择一个集合 S0,该集合中 A 以下和 A+1 及以上的元素各至少有一个。从 S0 中分别选出一个 A 以下的元素 a 和一个 A+1 及以上的元素 b。将 S0 从黑板上擦去,任意选择两个满足以下条件的集合 S1,S2 写到黑板上:
- S1,S2 的并集为 S0,且两者没有公共元素;
- a∈S1, b∈S2。
请计算所有可能的一系列操作的方案数,答案对 998244353 取模。
注意,如果存在某个 i (1≤i≤N−1),第 i 次操作所选择的 S0,a,b,S1,S2 中有任意一个不同,则认为这两组操作方案是不同的。
输入格式
输入为一行,包含三个整数:
N A B
输出格式
输出答案。
样例 1
输入
3 2 4
输出
1728
样例 2
输入
4 1 3
输出
6
样例 3
输入
5 6 6
输出
84486693
样例 4
输入
173173 173173 173173
输出
446948086
说明/提示
限制条件
- 2≤N≤2×105
- 1≤A,B≤2×105
- N≤A+B
- 所有输入均为整数
样例解释 1
一种操作方案如下:
- 选择 S0={1,2,3,4,5,6},a=2,b=5,分成 $S\_1=\lbrace 1,2,3,6\rbrace,\ S\_2=\lbrace 4,5\rbrace$。此时黑板上有 {1,2,3,6},{4,5} 两个集合。
- 选择 S0={1,2,3,6},a=1,b=3,分成 S1={1,2}, S2={3,6}。此时黑板上有 $\lbrace 1,2\rbrace,\lbrace 3,6\rbrace,\lbrace 4,5\rbrace$ 三个集合。
样例解释 2
如果第一次操作选择 a=1,b=2,分成 S1={1},S2={2,3,4},则后续无法完成 N−1 次操作。像这样未能完成 N−1 次操作的方案不计入答案。
由 ChatGPT 4.1 翻译