問題一覧 > 通常問題

No.2598 Kadomatsu on Tree

レベル : / 実行時間制限 : 1ケース 2.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 26
作問者 : hirayuu_yc / テスター : 👑 AngrySadEight
2 ProblemId : 10457 / 自分の提出
問題文最終更新日: 2024-01-01 09:16:39

問題文

長さ nn の整数列 a=(a1,a2,,an)a=(a_1,a_2,\dots,a_n) について、門松度を以下の条件を満たす 22 以上 nn 未満の ii の個数と定義します。

  • ai<ai+1a_i< a_{i+1} かつ ai<ai1a_i< a_{i-1}」または「 ai>ai+1a_i> a_{i+1} かつ ai>ai1a_i> a_{i-1}」の少なくとも一方が成り立つ

ただし、長さ 22 以下の任意の整数列の門松度は 00 であるとします。


NN 頂点 N1N-1 辺の単純連結無向グラフがあります。頂点には 1,2,,N1,2,\dots,N と番号がついており、ii 番目の辺は頂点 UiU_i と頂点 ViV_i を双方向に結びます。

また、長さ NN の整数列 AA が与えられます。

f(i,j)f(i,j) を、以下の条件をすべて満たす長さ nn の唯一の整数列 p=(p1,p2,,pn)p=(p_1,p_2,\dots,p_n) から q=(Ap1,Ap2,,Apn)q=(A_{p_1},A_{p_2},\dots,A_{p_n}) を得たときの、qq の門松度とします。

  • p1=ip_1=i
  • pn=jp_n=j
  • 1pkN(1kn)1\leq p_k\leq N(1\leq k\leq n)
  • pp のすべての要素は相違なる
  • 11 以上 nn 未満のすべての kk について、頂点 pkp_k と頂点 pk+1p_{k+1} は直接辺で結ばれている

i=1Nj=iNf(i,j)\sum_{i=1}^{N}\sum_{j=i}^{N}f(i,j)998244353998244353 で割った余りを求めてください。

入力

NN
U1 V1U_1\ V_1
U2 V2U_2\ V_2
\vdots
UN1 VN1U_{N-1}\ V_{N-1}
A1 A2  ANA_1\ A_2\ \dots\ A_N
  • 3N2×1053\leq N\leq 2\times 10^5
  • 1Ui,ViN(1iN1)1\leq U_i,V_i\leq N(1\leq i\leq N-1)
  • 与えられるグラフは連結である。
  • 1Ai1091\leq A_i\leq 10^9

出力

11 行で、答えを出力してください。

サンプル

サンプル1
入力
5
1 3
2 1
4 1
4 5
2 1 3 1 2
出力
5

f(i,j)f(i,j)11 以上であるものを以下に示します。

  • f(1,5)=1p=(1,4,5),q=(2,1,2)f(1,5)=1\dots p=(1,4,5),q=(2,1,2) であり、qq の門松度は 11
  • f(2,4)=1p=(2,1,4),q=(1,2,1)f(2,4)=1\dots p=(2,1,4),q=(1,2,1) であり、qq の門松度は 11
  • f(2,5)=2p=(2,1,4,5),q=(1,2,1,2)f(2,5)=2\dots p=(2,1,4,5),q=(1,2,1,2) であり、qq の門松度は 22
  • f(3,5)=1p=(3,1,4,5),q=(3,2,1,2)f(3,5)=1\dots p=(3,1,4,5),q=(3,2,1,2) であり、qq の門松度は 11

よって、答えは 55 です。

サンプル2
入力
6
1 2
2 3
1 5
5 6
4 5
1 1 1 1 1 1
出力
0
サンプル3
入力
10
6 8
6 1
5 10
5 2
6 4
2 4
5 9
8 7
3 9
461924924 987491630 891274602 524053807 460183912 97638725 932784974 244569286 453506405 44117081
出力
50

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。