111

T694893 树上问题

题目描述

有一颗大小为 \(n\) 的树,树上每个点有点权,其中第 \(i\) 个点有点权 \(w_i\),并定义 \(d_i\)\(1\) 号点到 \(i\) 号点的唯一简单路径所经过的边数。

小 A,小 B,小 C 和小 D 对这棵树各有厌恶点,其中:

  1. 小 A 厌恶所有满足 \(i\)\(j\) 的祖先且 \(w_i>w_j\) 的点对 \((i,j)\)
  2. 小 B 厌恶所有满足 \(i\)\(j\) 的祖先且 \(w_i<w_j\) 的点对 \((i,j)\)
  3. 小 C 厌恶所有满足 \(i<j\)\(i\)\(j\) 没有祖孙关系(\(i\) 不是 \(j\) 的祖先,\(j\) 也不是 \(i\) 的祖先)的点对 \((i,j)\)
  4. 小 D 厌恶离 \(1\) 号点距离太远的点。

现在这四个人会围绕着这个树一起做游戏,游戏开始前需要分组,由于小 B 在这四个人里面并不受欢迎,所以小 A,小 C 和小 D 会孤立小 B 单独组成一个小帮派,我们把这个帮派成为 X 组,小 B 自己成为 Y 组。

游戏过程中,各组成员需要选择树上一些点,他们需要保证每个点都要被恰好一个组选中。

形式化地,记 \(F(X)\) 为 X 组选择的点集,\(F(Y)\)\(Y\) 组选择的点集,则需满足 \(F(X)\cup F(Y)=\{1,2,\dots,n\}\)\(F(X)\cap F(Y)=\empty\)

定义 X 组的厌恶度为:

\[\sum_{i\in F(X)}\sum_{j\in F(X)}f(i,j)+\sum_{i\in F(X)}d_i \]

其中若小 A 和小 C 中存在一个人厌恶点对 \((i,j)\),则 \(f(i,j)=1\),否则 \(f(i,j)=0\)

定义 Y 组的厌恶度为:

\[\sum_{i\in F(Y)}\sum_{j\in F(Y)}g(i,j) \]

其中若小 B 厌恶点对 \((i,j)\),则 \(g(i,j)=1\),否则 \(g(i,j)=0\)

你是这个游戏的掌控者,为了让游戏有更多的趣味,你会时常规定集合 \(F(Y)\) 的大小,所以你想知道对于每个 \(0\le i\le n\),当 \(|F(Y)|=i\) 时,X 组和 Y 组的厌恶度之和最小是多少。

输入格式

第一行一个整数 \(n\)

接下来 \(n-1\) 行,每行两个整数 \(u,v\),代表树上有一条从 \(u\) 连向 \(v\) 的边。

最后一行 \(n\) 个整数,其中第 \(i\) 个整数为 \(w_i\)

输出格式

共一行 \(n+1\) 个整数,其中第 \(i\) 个整数代表 \(|F(Y)|=i-1\) 时的答案。

输入输出样例 #1

输入 #1

4
1 2
2 3
2 4
4 1 2 3

输出 #1

9 5 2 1 2

输入输出样例 #2

输入 #2

5
1 2
2 3
2 4
1 5
4 4 2 3 2

输出 #2

15 9 4 1 0 0

输入输出样例 #3

输入 #3

12
1 2
2 3
3 4
2 5
1 6
4 7
7 8
8 9
6 10
5 11
9 12
11 6 3 7 8 2 8 4 6 3 7 9

输出 #3

84 71 59 48 39 31 24 19 15 12 11 13 17

输入输出样例 #4

输入 #4

见 ex_tree4.in/ex_tree4.out

该样例满足测试点编号 6 的限制

输出 #4

见 ex_tree4.in/ex_tree4.out

该样例满足测试点编号 6 的限制

输入输出样例 #5

输入 #5

见 ex_tree5.in/ex_tree5.out

该样例满足测试点编号 9~10 的限制

输出 #5

见 ex_tree5.in/ex_tree5.out

该样例满足测试点编号 9~10 的限制

说明/提示

对于全部测试点,\(1\le n\le 5\times 10^5,1\le u,v\le n,1\le w_i\le n\),保证输入给出的是一棵合法的树,每个测试点 \(5\) 分。

测试点编号 $n\le $ 特殊性质
\(1\sim 3\) \(18\)
\(4\) \(300\) \(v=u+1\)
\(5\) \(300\) 所有 \(w_i\) 互不相同
\(6\) \(300\)
\(7\) \(2000\) \(v=u+1\)
\(8\) \(2000\) 所有 \(w_i\) 互不相同
\(9\sim 10\) \(2000\)
\(11\) \(10^5\) \(v=u+1\)
\(12\) \(10^5\) 所有 \(w_i\) 互不相同
\(13\sim 14\) \(10^5\)
\(15\) \(5\times 10^5\) \(v=u+1\)
\(16\sim 17\) \(5\times 10^5\) 所有 \(w_i\) 互不相同
\(18\sim 20\) \(5\times 10^5\)
posted @ 2025-11-16 12:20  Kent530  阅读(10)  评论(0)    收藏  举报