atcoder#ARC145C. [ARC145C] Split and Maximize

[ARC145C] Split and Maximize

配点 : 600600

問題文

(1,2,,2N)(1,2,\ldots,2N) の順列 P=(P1,P2,,P2N)P=(P_1,P_2,\ldots,P_{2N}) に対し、スコアを以下で定義します。

$$P$$$$N$$$$ A = (A_1,A_2,\ldots,A_N),B = (B_1,B_2,\ldots,B_N)$$$$\displaystyle\sum_{i=1}^{N}A_i B_i$$$(1,2,\ldots,2N)$ の順列全てについてスコアを計算し、それらの最大値を $M$ とします。 $(1,2,\ldots,2N)$ の順列のうち、スコアが $M$ であるものの個数を $998244353$ で割ったあまりを求めてください。 $$

制約

  • 1N2×1051 \leq N \leq 2\times 10^5
  • 入力は全て整数

入力

入力は以下の形式で標準入力から与えられる。

NN

出力

答えを出力せよ。

2
16

考えられる順列 2424 通りの中で、スコアの最大値 MM1414 です。スコアが 1414 となる順列は 1616 通りあります。

例えば、順列 (1,2,3,4)(1,2,3,4)A=(1,3),B=(2,4)A=(1,3), B=(2,4) と分割することで、i=1NAiBi=14\sum _{i=1}^{N}A_i B_i = 14 となります。

10000
391163238

998244353998244353 で割ったあまりを答えてください。