
生成树问题
cjk_cjk
这个作者很懒,什么都没留下…
展开
-
BZOJ1083 [SCOI2005]繁忙的都市(最小生成树)
【题解】裸的Kruskal,将边从小到大排序,依次加边,并查集维护连通性即可#include#includeint fa[305]={0},u[90005]={0},v[90005]={0},w[90005]={0};int father(int x){ if(fa[x]!=x) fa[x]=father(fa[x]); return fa[x];}void jh(原创 2015-02-04 13:29:38 · 661 阅读 · 0 评论 -
BZOJ1050 [HAOI2006]旅行comf(Kruskal算法)
SPFA是错误的:局部最优不能保证全局最优,因为要求的是比例最小 可以设计m^2的算法:先将边按长度排序,然后限定最小边的长度w[i],依次加入更大的边,当加到某条边w[j]后s与t连通(并查集判断)时,用w[j]/w[i](double类型)更新答案 若没有w[i]能使s与t连通,则无解 注意:路径中分出的"杈"不用管,因为它们的长度既非最小,也非最大,去掉后s,t仍原创 2015-02-04 02:26:17 · 1924 阅读 · 0 评论