A15731. Colorful Tree Again
编程题
普及/提高-
知识点
题目描述
An edge-weighted tree of $n$ nodes is given with each edge colored in some color. Each node of this tree can be blocked or unblocked, all nodes are unblocked initially.
A simple path is a path in a graph that does not have repeating nodes. The length of a path is defined as the sum of weights of all edges on the path.
A path is good when it is a simple path consisting of edges of the same color $c$ , all edges of color $c$ are on this path, and every node on the path is unblocked.
You need to operate $2$ kinds of queries:
1. block a node,
2. unblock a node.
After each query, print the maximum length among all good paths. If there are no good paths, print $0$ .
A simple path is a path in a graph that does not have repeating nodes. The length of a path is defined as the sum of weights of all edges on the path.
A path is good when it is a simple path consisting of edges of the same color $c$ , all edges of color $c$ are on this path, and every node on the path is unblocked.
You need to operate $2$ kinds of queries:
1. block a node,
2. unblock a node.
After each query, print the maximum length among all good paths. If there are no good paths, print $0$ .
输入格式
The first line contains two integers $n$ , $q$ ( $1 \leq n,q \leq 2\cdot 10^5$ ) — the number of nodes and the number of queries.
Then $n-1$ lines follow, each containing four integers $u$ , $v$ , $w$ and $c$ ( $1 \leq u,v,w,c \leq n$ ; $u \not = v$ ), denoting a weighted edge connecting node $u$ and node $v$ with weight $w$ and color $c$ . It is guaranteed that these edges form a tree.
Then $q$ lines follow, each containing two integers $p$ and $x$ ( $p = 0$ or $p = 1$ , $1\leq x\leq n$ ), denoting a query:
1. if $p = 0$ , block the node $x$ . It's guaranteed that it's not blocked at this time;
2. if $p = 1$ , unblock the node $x$ . It's guaranteed that it's blocked at this time.
Then $n-1$ lines follow, each containing four integers $u$ , $v$ , $w$ and $c$ ( $1 \leq u,v,w,c \leq n$ ; $u \not = v$ ), denoting a weighted edge connecting node $u$ and node $v$ with weight $w$ and color $c$ . It is guaranteed that these edges form a tree.
Then $q$ lines follow, each containing two integers $p$ and $x$ ( $p = 0$ or $p = 1$ , $1\leq x\leq n$ ), denoting a query:
1. if $p = 0$ , block the node $x$ . It's guaranteed that it's not blocked at this time;
2. if $p = 1$ , unblock the node $x$ . It's guaranteed that it's blocked at this time.
输出格式
For each query, print the maximum length of a good path. If there are no good paths, print $0$ .
输入输出样例
输入 #1
5 4 4 1 3 4 5 2 4 4 3 1 3 2 1 2 5 1 0 4 0 3 0 2 1 3
输出 #1
5 5 0 3
输入 #2
5 5 4 1 4 4 4 5 2 2 3 1 2 4 3 2 3 1 0 3 0 4 1 3 1 4 0 1
输出 #2
2 0 3 6 3
输入 #3
6 9 3 2 2 3 2 4 4 2 3 1 5 5 6 4 3 2 5 3 1 3 0 2 0 4 0 5 0 6 1 2 1 4 1 5 0 3 1 6
输出 #3
5 5 5 5 5 5 5 0 7
输入 #4
1 2 0 1 1 1
输出 #4
0 0