AT_agc040_f [AGC040F] Two Pieces
Description
[problemUrl]: https://atcoder.jp/contests/agc040/tasks/agc040_f
数直線上に,区別できない $ 2 $ つの駒が置かれています. どちらの駒も最初,座標 $ 0 $ にあります.(駒は同じ座標に同時に存在できます)
これらの駒に対して,以下の $ 2 $ 種類の操作が可能です.
- 好きな駒を $ 1 $ つ選び,$ 1 $ 大きい座標に移動する.
- 座標の小さい駒を,座標の大きい駒の位置へと移動する. なお,もともと $ 2 $ つの駒が同じ座標に置いてある場合は何も起きないが,その場合でも $ 1 $ 回の操作として数える.
以上の操作を好きな順番で $ N $ 回繰り返して,$ 2 $ つの駒の一方が座標 $ A $,他方が座標 $ B $ にあるようにしたいです. このような動かし方が何通りあるかを求めてください. ただし答えは非常に大きくなることがあるので,$ 998244353 $ で割ったあまりを求めてください.
なお,ある $ 2 $ つの動かし方 $ x,y $ が異なるとは,整数 $ i $ ($ 1\ \leq\ i\ \leq\ N $) であって, $ ( $ 動かし方 $ x $ で $ i $ 回目の操作後に駒の置いてある座標の集合 $ ) $ と $ ( $ 動かし方 $ y $ で $ i $ 回目の操作後に駒の置いてある座標の集合 $ ) $ が異なるものが存在することを意味します.
Input Format
N/A
Output Format
N/A
Explanation/Hint
### 制約
- $ 1\ \leq\ N\ \leq\ 10^7 $
- $ 0\ \leq\ A\ \leq\ B\ \leq\ N $
- 入力される値はすべて整数である.
### Sample Explanation 1
以下の $ 4 $ 通りの動かし方があります. なお,$ (x,y) $ で,駒の座標がそれぞれ $ x,y $ にある状態を表しています. - $ (0,0)→(0,0)→(0,1)→(0,2)→(0,3)→(1,3) $ - $ (0,0)→(0,0)→(0,1)→(0,2)→(1,2)→(1,3) $ - $ (0,0)→(0,0)→(0,1)→(1,1)→(1,2)→(1,3) $ - $ (0,0)→(0,1)→(1,1)→(1,1)→(1,2)→(1,3) $