最小生成树
!
fffefw
这个作者很懒,什么都没留下…
展开
-
poj-2728Desert King(最优比率生成树)
题目要求的是MIN( ∑CiXi / ∑DiXi ) Xi∈{0,1},这里xi表示生成树对边的选取,xi=1表示选了,为0表示没有选。 对每个生成树,设其比率r=∑CiXi / ∑DiXi ,可得∑CiXi - ∑DiXi * r=0,可以知道对于所有的生成树,显然有∑CiXi - ∑DiXi * min(r) >= 0,当 ∑CiXi / ∑DiXi = min(r)时,则有∑Ci...原创 2018-08-03 08:50:49 · 277 阅读 · 0 评论 -
Kruskal板子
#include<stdio.h> #include<algorithm> #include<iostream> using namespace std; #define maxn 100 int V,E,res,father[maxn]; struct edge { int u,v,cost; }es[maxn]; bool cmp(struct e...原创 2018-08-19 19:13:27 · 191 阅读 · 2 评论 -
Codeforces Round #544 (Div. 3) F1. Spanning Tree with Maximum Degree
题意是给个图,然后求生成树的最大度数的节点的度数最大化的值。 思路:生成树里最大度数的节点的度数取最大,所对应的那个节点必定是原图里度最大的节点,然后由该点向四周bfs,直至所有点都在一个树里。 #include<bits/stdc++.h> using namespace std; const int maxn=2e5+10; vector<int>...原创 2019-03-09 00:49:18 · 244 阅读 · 0 评论