题目大意
有一棵树,\(n\)(\(n\leq2*10^5\))个点,每条边\(i\)有颜色\(w_i\),共有\(m\)(\(m\leq n\))种颜色,第\(i\)种颜色的权值是\(c_i\)(\(|c_i|\leq10^4\))
定义一条路径的权值是该路径上所有同色段的颜色的权值之和
给定\(l,r\),求边数在\([l,r]\)中权值最大的路径的权值
题解
将每个点的所有边按颜色排序后,对这棵树进行点分治,每次统计过当前重心的路径
用线段树统计应该挺板的吧
有人用单调队列做,然而我不会,先坑着
代码
#include
#include
#include
#include
#include
#include
#include
#include
#include