問題一覧 >
通常問題
No.2598 Kadomatsu on Tree
レベル :
/ 実行時間制限 : 1ケース 2.000秒 / メモリ制限
: 512 MB / 標準ジャッジ問題
タグ :
/
解いたユーザー数 26
作問者 :
hirayuu_yc
/ テスター :
👑
AngrySadEight
問題文最終更新日: 2024-01-01 09:16:39
問題文
長さ n の整数列 a=(a1,a2,…,an) について、門松度を以下の条件を満たす 2 以上 n 未満の i の個数と定義します。
- 「 ai<ai+1 かつ ai<ai−1」または「 ai>ai+1 かつ ai>ai−1」の少なくとも一方が成り立つ
ただし、長さ 2 以下の任意の整数列の門松度は 0 であるとします。
N 頂点 N−1 辺の単純連結無向グラフがあります。頂点には 1,2,…,N と番号がついており、i 番目の辺は頂点 Ui と頂点 Vi を双方向に結びます。
また、長さ N の整数列 A が与えられます。
f(i,j) を、以下の条件をすべて満たす長さ n の唯一の整数列 p=(p1,p2,…,pn) から q=(Ap1,Ap2,…,Apn) を得たときの、q の門松度とします。
- p1=i
- pn=j
- 1≤pk≤N(1≤k≤n)
- p のすべての要素は相違なる
- 1 以上 n 未満のすべての k について、頂点 pk と頂点 pk+1 は直接辺で結ばれている
∑i=1N∑j=iNf(i,j) を 998244353 で割った余りを求めてください。
入力
N
U1 V1
U2 V2
⋮
UN−1 VN−1
A1 A2 … AN
- 3≤N≤2×105
- 1≤Ui,Vi≤N(1≤i≤N−1)
- 与えられるグラフは連結である。
- 1≤Ai≤109
サンプル
サンプル1
入力
5
1 3
2 1
4 1
4 5
2 1 3 1 2
出力
5
f(i,j) が 1 以上であるものを以下に示します。
- f(1,5)=1…p=(1,4,5),q=(2,1,2) であり、q の門松度は 1
- f(2,4)=1…p=(2,1,4),q=(1,2,1) であり、q の門松度は 1
- f(2,5)=2…p=(2,1,4,5),q=(1,2,1,2) であり、q の門松度は 2
- f(3,5)=1…p=(3,1,4,5),q=(3,2,1,2) であり、q の門松度は 1
よって、答えは 5 です。
サンプル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もしくは右上の雲マークをクリックしてアカウントを作成してください。