最小生成树
沙茶
这个作者很懒,什么都没留下…
展开
-
[luogu1991] 无线通讯网
题目链接#include <iostream> #include <cstdio> #include <cmath> #include <algorithm> #define MAX 505 using namespace std; int s,n,m,total=1; double ans; int v[MAX*MAX],u[MAX*MAX];//存储边 int f[MAX],r[MAX*MA原创 2016-06-22 10:08:42 · 282 阅读 · 0 评论 -
[Usaco08Oct] Watering Hole
题目链接题解:神奇……#include <cstdio> #include <iostream> #include <algorithm> #define M 305 using namespace std; int n,m,tot,x,y,z,ans,w; int v[M*M],u[M*M],val[M*M]; int f[M],r[M*M]; void init() { cin>>n;原创 2016-10-16 11:16:02 · 315 阅读 · 0 评论 -
[50Tproject-13]
题解:每条边的权值是边权*2+两个点的权值,跑一下最小生成树,因为要选择一个牧场过夜,所以tot还要加上最小的点的权值#include <iostream> #include <cstdio> #include <algorithm> #include <climits> using namespace std; #define INF INT_MAX const int M=10005; int原创 2016-10-02 16:00:04 · 169 阅读 · 0 评论 -
[51nod1640] 天气晴朗的魔法
题目链接题解:题目描述非常excited。显然,二分可以搞(因为没开long long和没写读优又T又WA了n次),最后用读优卡过去了。不过,只需要先kruskal一次求最小生成树(条件1,最大边权尽量小),记录生成最大边权MX,再以MX为最大边权跑最大生成树就行了(条件2,权值和尽量大),比二分不知道高到那里去了#include <iostream> #include <cstdio> #incl原创 2016-11-16 09:02:43 · 350 阅读 · 0 评论