問題一覧 > 通常問題

No.2045 Two Reflections

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

問題文

$3$ つの正の整数 $N,p,q$ が与えられます。長さ $N$ の数列 $A$ は初め $A_i=i \ (1\le i\le N)$ をみたします。

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

  • 操作 $1$: 先頭 $p$ 項を反転させる。すなわち、$A_1,A_2,\ldots,A_p$ を $A_p,A_{p-1},\ldots,A_1$ で置き換える。
  • 操作 $2$: 末尾 $q$ 項を反転させる。すなわち、$A_{N-q+1},\ldots,A_{N-1},A_N$ を $A_N,A_{N-1},\ldots,A_{N-q+1}$ で置き換える。

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

制約

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

入力

$N$ $p$ $q$

出力

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

サンプル

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

操作 $1$ は $A_1,A_2,A_3,A_4$ を $A_2,A_1,A_3,A_4$ に置き換える操作で、操作 $2$ は $A_1,A_2,A_3,A_4$ を $A_1,A_2,A_4,A_3$ に置き換える操作です。得られる数列は

  • $1,2,3,4$
  • $1,2,4,3$
  • $2,1,3,4$
  • $2,1,4,3$

の $4$ 通りです。

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

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

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

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