atcoder#ABC222H. [ABC222H] Beautiful Binary Tree

[ABC222H] Beautiful Binary Tree

配点 : 600600

問題文

正の整数 NN に対して、次の条件を満たす根付き二分木を N 次の美しい二分木 と定めます。

  • 頂点には 0011 が書かれている。
  • 頂点が葉ならば、必ず 11 が書かれている。
  • 次の操作を高々 N1N-1 回行うことで、根に書かれている数を NN に、それ以外の頂点に書かれている数を 00 にすることができる。- 頂点 u,vu, v を選ぶ。ここで vvuu の子、あるいは uu の子の子である必要がある。 u,vu,v に書かれている数を au,ava_u, a_v としたとき、 auau+av,av0a_u \gets a_u + a_v, a_v \gets 0 とする。

NN が与えられるので、NN 次の美しい二分木の個数を 998244353998244353 で割ったあまりを答えてください。

制約

  • 1N1071 \leq N \leq 10^7
  • 入力はすべて整数である。

入力

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

NN

出力

答えを出力せよ。

1
1

条件を満たす二分木は、根に 11 が書かれている 11 頂点の木のみです。

2
6

条件を満たす二分木は次の 66 通りです。

image

222
987355927
222222
675337738