题目描述
Problem Statement
You are given a tree with N vertices. The vertices are numbered 0 through N-1, and the edges are numbered 1 through N-1.
Edge i connects Vertex x_i and y_i, and has a value a_i.
You can perform the following operation any number of times:
- Choose a simple path and a non-negative integer x, then for each edge e that belongs to the path, change a_e by executing a_e ← a_e ⊕ x (⊕ denotes XOR).
Your objective is to have a_e = 0 for all edges e.
Find the minimum number of operations required to achieve it.
Input
Input is given from Standard Input in the following format:
N
x_1 y_1 a_1
x_2 y_2 a_2
:
x_{N-1} y_{N-1} a_{N-1}
Output
Find the minimum number of operations required to achieve the objective.
Constraints
- 2 ≤ N ≤ 10^5
- 0 ≤ x_i,y_i ≤ N-1
- 0 ≤ a_i ≤ 15
- The given graph is a tree.
- All input values are integers.
Sample Input 1
5
0 1 1
0 2 3
0 3 6
3 4 4
Sample Output 1
3
The objective can be achieved in three operations, as follows:
- First, choose the path connecting Vertex 1, 2, and x = 1.
- Then, choose the path connecting Vertex 2, 3, and x = 2.
- Lastly, choose the path connecting Vertex 0, 4, and x = 4.
Sample Input 2
2
1 0 0
Sample Output 2
0
输入格式
见题面 Input 部分
输出格式
见题面 Output 部分