Score : 1500 points
You are given a tree with N vertices numbered 1, 2, ..., N. The i-th edge connects Vertex a_i and Vertex b_i.
You are also given a string S of length N consisting of 0
and 1
. The i-th character of S represents the number of pieces placed on Vertex i.
Snuke will perform the following operation some number of times:
By repeating this operation, Snuke wants to have all the pieces on the same vertex. Is this possible? If the answer is yes, also find the minimum number of operations required to achieve it.
0
and 1
, and contains at least one 1
.Input is given from Standard Input in the following format:
N S a_1 b_1 a_2 b_2 : a_{N - 1} b_{N - 1}
If it is impossible to have all the pieces on the same vertex, print -1
. If it is possible, print the minimum number of operations required.
7 0010101 1 2 2 3 1 4 4 5 1 6 6 7
3
We can gather all the pieces in three operations as follows:
7 0010110 1 2 2 3 1 4 4 5 1 6 6 7
-1
2 01 1 2
0