A843.Balancing a Tree--Gold

提高+/省选-

USACO

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

Farmer John has conducted an extensive study of the evolution of different cow
breeds. The result is a rooted tree with NN (2N1052\le N\le 10^5) nodes labeled
1N1\ldots N, each node corresponding to a cow breed. For each i[2,N]i\in [2,N],
the parent of node ii is node pip_i (1pi<i1\le p_i<i), meaning that breed ii
evolved from breed pip_i. A node jj is called an ancestor of node ii if
j=pij=p_i or jj is an ancestor of pip_i.
Every node ii in the tree is associated with a breed having an integer number
of spots sis_i. The "imbalance" of the tree is defined to be the maximum of
sisj|s_i-s_j| over all pairs of nodes (i,j)(i,j) such that jj is an ancestor of
ii.
Farmer John doesn't know the exact value of sis_i for each breed, but he knows
lower and upper bounds on these values. Your job is to assign an integer value
of si[li,ri]s_i \in [l_i,r_i] (0liri1090\le l_i\le r_i\le 10^9) to each node such that the
imbalance of the tree is minimized.

输入格式

The first line contains TT (1T101\le T\le 10), the number of independent test
cases to be solved, and an integer B0,1B\in \\{0,1\\}.
Each test case starts with a line containing NN, followed by N1N-1 integers
p2,p3,,pNp_2,p_3,\ldots,p_N.
The next NN lines each contain two integers lil_i and rir_i.
It is guaranteed that the sum of NN over all test cases does not exceed
10510^5.

输出格式

For each test case, output one or two lines, depending on the value of BB.
The first line for each test case should contain the minimum imbalance.
If B=1,B=1, then print an additional line with NN space-separated integers
s1,s2,,sNs_1,s_2,\ldots, s_N containing an assignment of spots that achieves the
above imbalance. Any valid assignment will be accepted.

输入输出样例

  • 输入#1

    3 0
    3
    1 1
    0 100
    1 1
    6 7
    5
    1 2 3 4
    6 6
    1 6
    1 6
    1 6
    5 5
    3
    1 1
    0 10
    0 1
    9 10
    

    输出#1

    3
    1
    4
    

说明/提示

For the first test case, the minimum imbalance is 33. One way to achieve
imbalance 33 is to set [s1,s2,s3]=[4,1,7][s_1,s_2,s_3]=[4,1,7].

首页