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