AT_arc130_d [ARC130D] Zigzag Tree

Description

[problemUrl]: https://atcoder.jp/contests/arc130/tasks/arc130_d $ N $ 頂点からなる木が与えられます。頂点には $ 1 $ から $ N $ までの番号がついており、$ i $ 番目の辺は頂点 $ a_i $ と $ b_i $ を結んでいます。 正整数列 $ P\ =\ (P_1,\ P_2,\ \ldots,\ P_N) $ であって、以下の条件を満たすものの個数を $ 998244353 $ で割った余りを求めてください。 - $ 1\leq\ P_i\leq\ N $ - $ i\neq\ j $ ならば $ P_i\neq\ P_j $ - $ 1\leq\ a,\ b,\ c\leq\ N $ に対して頂点 $ a $ と 頂点 $ b $、頂点 $ b $ と頂点 $ c $ がともに隣接しているならば、$ P_a\ \ P_c $ または $ P_a\ >\ P_b\

Input Format

入力は以下の形式で標準入力から与えられます。 > $ N $ $ a_1 $ $ b_1 $ $ a_2 $ $ b_2 $ $ \vdots $ $ a_{N-1} $ $ b_{N-1} $

Output Format

答えを出力してください。

Explanation/Hint

### 制約 - $ 2\leq\ N\leq\ 3000 $ - $ 1\leq\ a_i,\ b_i\leq\ N $ - 入力されるグラフは木である ### Sample Explanation 1 条件を満たす $ P $ は以下の $ 4 $ 通りです。 - $ P\ =\ (1,\ 3,\ 2) $ - $ P\ =\ (2,\ 1,\ 3) $ - $ P\ =\ (2,\ 3,\ 1) $ - $ P\ =\ (3,\ 1,\ 2) $