#P11690. [Ynoi Hard Round 2025] 《十字神名的预言者》理解(色彩)

[Ynoi Hard Round 2025] 《十字神名的预言者》理解(色彩)

背景

::::info[题目背景已折叠]

::::

题目描述

给定一棵 nn 个结点的树,第 ii 个结点有 bib_i 个棋子,且最多能放 aia_i 个棋子。现在有一个结点 kk 是根。每次操作你可以选择一个结点,将它的一个棋子,移到它的父亲上,需要满足它父亲的棋子数没有超过限制,然后需要最小化所有棋子到 kk 的距离和。

对 k=1,2,⋯ ,nk = 1, 2, \cdots, n 都求出答案。

输入格式

第一行包含一个正整数 nn 表示树的结点数量。

第二行包含 nn 个正整数,第 ii 个正整数表示第 ii 个结点上最多能放 aia_i 个棋子。

第三行包含 nn 个正整数,第 ii 个正整数表示第 ii 个结点上初始放了 bib_i 个棋子。

接下来 n−1n-1 行,每行两个数 u,vu,v,表示树上的一条边。

输出格式

一行 nn 个整数,第 ii 个整数表示 ii 作为根时的答案。

3
6 2 10 
6 0 2 
1 2
2 3
2 6 0
5
7 6 2 1 10 
3 5 0 0 7 
1 2
2 3
1 4
4 5
10 12 20 14 9

提示

Idea:zhaohaikun,Solution:zhaohaikun,Code:zhaohaikun,Data:zhaohaikun。

对于所有数据满足:1≤n≤5×1051\le n\le 5\times 10^5,0≤bi≤ai0 \le b_i \le a_i,1≤ai≤1071\le a_i\le 10^7,为了避免答案爆 long long,将 aia_i 的范围开小了一点。

subtask 1(11 分):bi=0b_i=0;

subtask 2(55 分):n≤2000n\le 2000;

subtask 3(1111 分):n≤8000n\le 8000;

subtask 4(33 分):链,保证 ∀i∈[1,n−1]∩Z\forall i\in [1, n-1]\cap \mathbb{Z},满足 ii 和 i+1i+1 有边;

subtask 5(33 分):菊花,保证 ∀i∈[2,n]∩Z\forall i\in [2, n]\cap \mathbb{Z},满足 11 和 ii 有边;

subtask 6(66 分):保证树随机;

subtask 7(1616 分):ai≤5a_i\le 5;

subtask 8(2222 分):n≤5×104n\le 5\times 10^4;

subtask 9(1616 分):n≤105n\le 10^5;

subtask 10(1111 分):n≤2×105n\le 2\times 10^5;

subtask 11(55 分):n≤3×105n\le 3\times 10^5;

subtask 12(11 分):无。

这里说明随机树的生成方式:对于结点 i∈[2,n]i\in [2,n],在 [1,i−1][1,i-1] 内等概率随机一个点 pp,将 i,pi,p 连一条边。