L - 01 String and Sequence
ผักชี
4
s
1024
MB
650
点
問題文
正整数 $N$ および $1$ 以上 $998244352$ 以下の整数 $X$ が与えられます。
長さ $N$ で各項が $1$ 以上 $N$ 以下の数列 $A=(A_1, \cdots, A_N)$ であって、以下の条件を満たすものの個数を $998244353$ で割った余りを求めてください。
- 以下の条件を満たす長さ $N$ の文字列 $S$ の個数を $998244353$ で割った余りは $X$ である。
- $S$ の各文字は
0
,1
からなる。 - $1 \leq i \leq N$ を満たす全ての整数 $i$ について $S_i \neq S_{A_i}$ である。
- $S$ の各文字は
制約
- 入力は全て整数
- $1 \leq N \leq 2 \times 10^5$
- $1 \leq X \leq 998244352$
入力
入力は以下の形式で標準入力から与えられる。
$N\ X$
出力
答えを出力してください。
入力例 1
3 2
出力例 1
6
例えば数列 $A=(2,1,2)$ は条件を満たします。 $S$ としてありうるものは 010
101
と全部で $2$ 通り存在します。
入力例 2
100000 23226277
出力例 2
122569763
入力例 3
100 3
出力例 3
0