Restricted Descendants

2 secs 1024 MB
ecottea's icon ecottea

問題文

頂点 0,1,,N10, 1, \dots, N-1NN 頂点からなる根付き木において,各頂点 ii の子の数が did_i であるようなものの個数を 998244353998244353 で割った余りを求めてください.

ただし,木は以下の条件を満たしている必要があります.

  • 条件: 葉でない(子の数が 11 以上の)任意の頂点 vv について,ある vv の子 cc が存在し,vv より番号の小さい vv の子孫は,すべて cc を先祖にもつ.

なお,頂点 uuvv の先祖であるとは,u=vu=v であるか,あるいは uuvv の親の先祖であることを指します.また,頂点 uuvv の子孫であるとは,vvuu の先祖であることを指します.

制約

  • 2N2×1052 \le N \le 2 \times 10^5
  • 0di<N0 \le d_i < N
  • i=0N1di=N1\sum_{i=0}^{N-1} d_i = N-1
  • 入力はすべて整数

入力

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

NN
d0  d1    dN1d_0 \; d_1 \; \ldots \; d_{N-1}

出力

条件を満たす根付き木の個数を 998244353998244353 で割った余りを出力せよ.


サンプル

入力1
3
1 1 0
出力1
2

以下の 2 つの木が条件を満たします.

  1. 頂点 0 が根,0 の子が 1,1 の子が 2.
  2. 頂点 1 が根,1 の子が 0,0 の子が 2.

例えば 2 のケースでは,頂点 1 について,子 c=0c=0 を選ぶと,自分より小さい子孫 {0}\{0\} はすべて 0 の子孫であるため条件を満たします.

提出


Go (1.21)