Contest Chủ Đề Euler Tour
CSES - Subtree Queries
Nộp bài
Time limit: 1.0 /
Memory limit: 512M
Point: 100
You are given a rooted tree consisting of ~n~ nodes. The nodes are numbered ~1,2,\ldots,n~, and node ~1~ is the root. Each node has a value.
Your task is to process following types of queries:
- change the value of node ~s~ to ~x~
- calculate the sum of values in the subtree of node ~s~
Input
- The first input line contains two integers ~n~ and ~q~: the number of nodes and queries. The nodes are numbered ~1,2,\ldots,n~.
- The next line has ~n~ integers ~v\_1,v\_2,\ldots,v\_n~: the value of each node.
- Then there are ~n-1~ lines describing the edges. Each line contans two integers ~a~ and ~b~: there is an edge between nodes ~a~ and ~b~.
- Finally, there are ~q~ lines describing the queries. Each query is either of the form "1 ~s~ ~x~" or "2 ~s~".
Output
- Print the answer to each query of type 2.
Constraints
- ~1 \le n, q \le 2 \cdot 10^5~
- ~1 \le a,b, s \le n~
- ~1 \le v\_i, x \le 10^9~
Example Input
5 3
4 2 5 2 1
1 2
1 3
3 4
3 5
2 3
1 5 3
2 3
Example Output
8
10
CSES - Path Queries
Nộp bài
Time limit: 1.0 /
Memory limit: 512M
Point: 100
You are given a rooted tree consisting of ~n~ nodes. The nodes are numbered ~1,2,\ldots,n~, and node ~1~ is the root. Each node has a value.
Your task is to process following types of queries:
- change the value of node ~s~ to ~x~
- calculate the sum of values on the path from the root to node ~s~
Input
- The first input line contains two integers ~n~ and ~q~: the number of nodes and queries. The nodes are numbered ~1,2,\ldots,n~.
- The next line has ~n~ integers ~v\_1,v\_2,\ldots,v\_n~: the value of each node.
- Then there are ~n-1~ lines describing the edges. Each line contains two integers ~a~ and ~b~: there is an edge between nodes ~a~ and ~b~.
- Finally, there are ~q~ lines describing the queries. Each query is either of the form "1 ~s~ ~x~" or "2 ~s~".
Output
- Print the answer to each query of type 2.
Constraints
- ~1 \le n, q \le 2 \cdot 10^5~
- ~1 \le a,b, s \le n~
- ~1 \le v\_i, x \le 10^9~
Example Input
5 3
4 2 5 2 1
1 2
1 3
3 4
3 5
2 4
1 3 2
2 4
Example Output
11
8
CSES - Distinct Colors
Nộp bài
Time limit: 1.0 /
Memory limit: 512M
Point: 100
You are given a rooted tree consisting of ~n~ nodes. The nodes are numbered ~1,2,\ldots,n~, and node ~1~ is the root. Each node has a color.
Your task is to determine for each node the number of distinct colors in the subtree of the node.
Input
- The first input line contains an integer ~n~: the number of nodes. The nodes are numbered ~1,2,\ldots,n~.
- The next line consists of ~n~ integers ~c\_1,c\_2,\ldots,c\_n~: the color of each node.
- Then there are ~n-1~ lines describing the edges. Each line contains two integers ~a~ and ~b~: there is an edge between nodes ~a~ and ~b~.
Output
- Print ~n~ integers: for each node ~1,2,\ldots,n~, the number of distinct colors.
Constraints
- ~1 \le n \le 2 \cdot 10^5~
- ~1 \le a,b \le n~
- ~1 \le c\_i \le 10^9~
Example Input
5
2 3 2 2 1
1 2
1 3
3 4
3 5
Example Output
3 1 2 1 1



