#ATagc040f. [AGC040F] Two Pieces
[AGC040F] Two Pieces
题目描述
在数轴上放置了两个不可区分的棋子。两个棋子最初都位于坐标 。(棋子可以同时存在于同一坐标)
对于这两个棋子,可以进行以下两种操作:
- 任选一个棋子,将其移动到坐标加 的位置。
- 将坐标较小的棋子移动到坐标较大的棋子的位置。如果两个棋子本来就在同一坐标,则什么都不发生,但这种情况也算作一次操作。
请以任意顺序重复上述操作共 次,使得两个棋子分别位于坐标 和 ()。请计算满足条件的操作方法有多少种。由于答案可能非常大,请输出对 取模的结果。
另外,若存在某个整数 (),使得第 次操作后棋子所在坐标的集合在两种操作方法 和 下不同,则认为这两种操作方法是不同的。
输入格式
输入从标准输入读入,格式如下:
输出格式
输出满足条件的棋子的操作方法数对 取模的结果。
样例 1
输入
5 1 3
输出
4
样例 2
输入
10 0 0
输出
1
样例 3
输入
10 4 6
输出
197
样例 4
输入
1000000 100000 200000
输出
758840509
说明/提示
限制条件
- 输入的所有值均为整数。
样例说明 1
存在以下 种操作方法。用 表示两个棋子分别位于 的状态。
- $(0,0) \to (0,0) \to (0,1) \to (0,2) \to (0,3) \to (1,3)$
- $(0,0) \to (0,0) \to (0,1) \to (0,2) \to (1,2) \to (1,3)$
- $(0,0) \to (0,0) \to (0,1) \to (1,1) \to (1,2) \to (1,3)$
- $(0,0) \to (0,1) \to (1,1) \to (1,1) \to (1,2) \to (1,3)$
由 ChatGPT 4.1 翻译