Class Solution
- java.lang.Object
-
- g2401_2500.s2440_create_components_with_same_value.Solution
-
public class Solution extends Object
2440 - Create Components With Same Value.Hard
There is an undirected tree with
nnodes labeled from0ton - 1.You are given a 0-indexed integer array
numsof lengthnwherenums[i]represents the value of theithnode. You are also given a 2D integer arrayedgesof lengthn - 1whereedges[i] = [ai, bi]indicates that there is an edge between nodesaiandbiin the tree.You are allowed to delete some edges, splitting the tree into multiple connected components. Let the value of a component be the sum of all
nums[i]for which nodeiis in the component.Return the maximum number of edges you can delete, such that every connected component in the tree has the same value.
Example 1:

Input: nums = [6,2,2,2,6], edges = [[0,1],[1,2],[1,3],[3,4]]
Output: 2
Explanation: The above figure shows how we can delete the edges [0,1] and [3,4]. The created components are nodes [0], [1,2,3] and [4]. The sum of the values in each component equals 6. It can be proven that no better deletion exists, so the answer is 2.
Example 2:
Input: nums = [2], edges = []
Output: 0
Explanation: There are no edges to be deleted.
Constraints:
1 <= n <= 2 * 104nums.length == n1 <= nums[i] <= 50edges.length == n - 1edges[i].length == 20 <= edges[i][0], edges[i][1] <= n - 1edgesrepresents a valid tree.
-
-
Constructor Summary
Constructors Constructor Description Solution()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description intcomponentValue(int[] nums, int[][] edges)
-