8625: Independent Feedback Vertex Set

内存限制:128 MB 时间限制:3 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:1 通过:1

题目描述

Yukikaze loves graph theory, especially forests and independent sets.

  • Forest: an undirected graph without cycles.
  • Independent set: a set of vertices in a graph such that for every two vertices, there is no edge connecting the two.
Yukikaze has an undirected graph G=(V,E) where V is the set of vertices and E is the set of edges. Each vertex in V has a vertex weight. Now she wants to divide V into two complementary subsets VI and VF such that VI is an independent set, and the induced subgraph G[V_F] is a forest. The induced subgraph G[VF] is the graph whose vertex set is VF and whose edge set consists of all of the edges in E that have both endpoints in VF. In addition, she wants to maximize the sum of weights of vertices in VI.

Since this problem is NP-hard for general graphs, she decides to solve a special case of the problem. We can build a special graph by the following steps. Initially, the graph consists of three vertices 1,2,3 and three edges (1,2), (2,3), (3,1). When we add a vertex xx into the graph, we select an edge (y,z) that already exists in the graph and connect (x,y) and (x,z) Keep doing this until there are n vertices in the graph.

输入格式

The first line of the input contains a single integer T 1T103), indicating the number of test cases.

The first line of each test case contains a single integer n 4n105), indicating the number of vertices in the graph. It is guaranteed that the sum of nn over all test cases won't exceed 106.

The second line of each test case contains n positive integers a1,a2,,an (1ai109), indicating the weights of the vertices.

Initially, the graph consists of three vertices 1,2,31,2,3 and three edges (1,2), (2,3), (3,1). The ii-th line of the next n-3 lines contains two integers u, v (1u,v<i+3), indicating the addition of a vertex i+3 and two edges (i+3,u),(i+3,v) to the graph. It is guaranteed that (u,v) already exists in the graph.

输出格式

For each test case, print an integer in a single line indicating the maximum sum of weights of vertices in VI.

输入样例 复制

3
4
3 3 2 2
1 2
4
2 5 5 2
2 3
5
3 1 1 1 1
1 2
1 3

输出样例 复制

4
5
3