#arc121e. [arc121_e]Directed Tree

[arc121_e]Directed Tree

题目描述

给定一个有NN个顶点编号为11NN的有向树。

顶点11是树的根。对于2iN2 \leq i \leq N的每个整数ii,从顶点pip_iii有一条有向边。

aa(1,,N)(1, \ldots, N)的排列,aia_iaa的第ii个元素。

在所有可能的aaN!N!个序列中,找到满足以下条件的序列的数量,结果对998244353998244353取模:

  • 条件:对于每个1iN1 \leq i \leq N的整数,通过遍历一个或多个边,无法从顶点aia_i到顶点ii

约束条件

  • 输入中的所有值都是整数。
  • 1N20001 \leq N \leq 2000
  • 1pi<i1 \leq p_i < i

输入

从标准输入读入数据,格式如下:

NN p2p_{2} \cdots pNp_N

输出

打印满足题目描述中条件的排列aa的数量,结果对998244353998244353取模。


示例输入 1

4
1 1 3

示例输出 1

4

示例输入 2

30
1 1 3 1 5 1 1 1 8 9 7 3 11 11 15 14 4 10 11 12 1 10 13 11 7 23 8 12 18

示例输出 2

746746186
  • 注意将结果对 998244353998244353 取模。