Codeforces 76A. Gift

给你 n 个点, m 条边 ( x , y , w 1 , w 2 ) 表示连接 x , y 的边有两个数 w 1 , w 2 ,要你求一个生成树,使得 m a x ( w 1 ) + m a x ( w 2 ) 最小。 n 200 , m 100000

qwq真是一道好题w

考虑一个暴力,枚举 w 1 的最大值 x ,然后把第一维 x 的边拿出来建第二维的最小生成树。

然后考虑优化,把这个暴力改成按照第一维排序,不断加入边,每次删掉树上环上第二维最大的边即可,删边可以暴力dfs。

复杂度 O ( n m + m l o g m )

猜你喜欢

转载自blog.csdn.net/Milkyyyyy/article/details/81395999
今日推荐