题目描述 N个点M条边的无向图,每个点有一个初始颜色,每次改变一个点的颜色,求改变后整张图上颜色不同的点之间的距离最小值. 思路 考虑整张图的距离最小值一定是一条边,而不可能是一条路径,那么显然这条边一定在MST上,于是我们考虑怎样维护这棵MST. 首先我们用kruskal建出MST,然后转化为有根树,把边权下放为点权,只维护每个点和它儿子的信息. 我们对每个节点所有儿子的颜色开一个multiset,维护每个点的儿子中每种颜色对应的最小边权(此时下放为点权),为了节省空间我们用map映射把颜色那…