問題一覧 > 通常問題

No.2045 Two Reflections

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 56
作問者 : 箱星 / テスター : hitonanode Shirotsume
9 ProblemId : 7780 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2022-08-20 00:23:23

問題文

33 つの正の整数 N,p,qN,p,q が与えられます。長さ NN の数列 AA は初め Ai=i (1iN)A_i=i \ (1\le i\le N) をみたします。

次の 22 種類の操作を考えます。

  • 操作 11: 先頭 pp 項を反転させる。すなわち、A1,A2,,ApA_1,A_2,\ldots,A_pAp,Ap1,,A1A_p,A_{p-1},\ldots,A_1 で置き換える。
  • 操作 22: 末尾 qq 項を反転させる。すなわち、ANq+1,,AN1,ANA_{N-q+1},\ldots,A_{N-1},A_NAN,AN1,,ANq+1A_N,A_{N-1},\ldots,A_{N-q+1} で置き換える。

操作を好きな順番で 00 回以上行うことで得られる数列は何通りありますか。答えを 998244353998244353 で割った余りを求めてください。

制約

  • 1N1051\le N\le 10^5
  • 1p,qN1\le p, q\le N
  • 入力はすべて整数

入力

NN pp qq

出力

得られる数列が何通りあるかを求め、998244353998244353 で割った余りを出力してください。

サンプル

サンプル1
入力
4 2 2
出力
4

操作 11A1,A2,A3,A4A_1,A_2,A_3,A_4A2,A1,A3,A4A_2,A_1,A_3,A_4 に置き換える操作で、操作 22A1,A2,A3,A4A_1,A_2,A_3,A_4A1,A2,A4,A3A_1,A_2,A_4,A_3 に置き換える操作です。得られる数列は

  • 1,2,3,41,2,3,4
  • 1,2,4,31,2,4,3
  • 2,1,3,42,1,3,4
  • 2,1,4,32,1,4,3

44 通りです。

サンプル2
入力
10 4 7
出力
12

サンプル3
入力
100000 99999 99998
出力
451444810

998244353998244353 で割った余りを出力してください。

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。