GCD Harmony

아직 제출이 없습니다시간 제한4초메모리 제한1024 MB

문제

Consider a tree with undirected edges, where each node has an integer value. Adjacent nodes are said to be GCD-harmonic if the greatest common divisor (GCD) of their values is strictly greater than 11.

You can modify the value of any tree node to any positive integer. The cost of this operation is equal to the new node value, regardless of the node's original value. You can change as many node values as needed, and node values do not need to be unique.

What is the minimum total cost to make every pair of adjacent nodes in the tree GCD-harmonic?

입력

The first line of input contains a single integer nn (2n5,0002 \leq n \leq 5\\,000), which is the number of nodes in the tree. Tree nodes are numbered from 11 to nn.

Each of the next nn lines contains an integer vv (1v1001 \le v \le 100). These are the initial values of the nodes (which are not guaranteed to be unique), in node number order.

Each of the next n1n - 1 lines contains two integers aa and bb (1a,bn,ab1 \leq a, b \leq n, a \neq b), indicating a tree edge between nodes aa and bb. It is guaranteed that these edges form a tree.

출력

Output a single integer, which is the minimum total cost to make every pair of adjacent nodes in the tree GCD-harmonic.