PivotOJ

Watching Cowflix

시간 제한: 3000ms메모리 제한: 1024MB출처: USACO 2023 February PlatinumBOJ 27842

문제

Bessie likes to watch shows on Cowflix, and she watches them in different places. Farmer John's farm can be represented as a tree with NN (2N21052 \leq N \leq 2\cdot 10^5) nodes, and for each node, either Bessie watches Cowflix there or she doesn't. It is guaranteed that Bessie watches Cowflix in at least one node.

Unfortunately, Cowflix is introducing a new subscription model to combat password sharing. In their new model, you can choose a connected component of size dd in the farm, and then you need to pay d+kd + k moonies for an account that you can use in that connected component. Formally, you need to choose a set of disjoint connected components c1,c2,,cCc_1, c_2, \dots, c_C so that every node where Bessie watches Cowflix must be contained within some cic_i. The cost of the set of components is i=1C(ci+k)\sum_{i=1}^{C} (|c_i|+k), where ci|c_i| is the number of nodes in component cic_i. Nodes where Bessie does not watch Cowflix do not have to be in any cic_i.

Bessie is worried that the new subscription model may be too expensive for her given all the places she visits and is thinking of switching to Mooloo. To aid her decision-making, calculate the minimum amount she would need to pay to Cowflix to maintain her viewing habits. Because Cowflix has not announced the value of kk, calculate it for all integer values of kk from 11 to NN.

입력

The first line contains NN.

The second line contains a bit string s1s2s3sNs_1s_2s_3 \dots s_N where si=1s_i = 1 if Bessie watches Cowflix at node ii.

Then N1N-1 lines follow, each containing two integers aa and bb (1a,bN1 \leq a, b \leq N), which denotes an edge between aa and bb in the tree.

출력

The answers for each kk from 11 to NN on separate lines.

예제

예제 1

입력
5
10001
1 2
2 3
3 4
4 5
출력
4
6
8
9
10

예제 2

입력
7
0001010
7 4
5 6
7 2
5 1
6 3
2 5
출력
4
6
8
9
10
11
12
코드를 제출하려면 로그인하세요.