生成树
acblacktea
永不放弃
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2016 多校 hdu 5723
首先最小生成树,然后dfs统计每条边经过了几棵子树 每条边经过的子树个数等于这条边连接的子树节点数*(n-子树节点数)因为这是一棵树每条边都能把树分成两个集合,假设第一个集合的元素数目为n1,第二个集合的元素数目为n2,那么从两个集合分别选出一点就有n1*n2种方案#include<vector> #include<algorithm> #include<iostream> #include<cst原创 2016-07-20 22:18:43 · 506 阅读 · 0 评论 -
Poj-2031 最小生成树+几何
用最短距离使几个球联通,最小生成树,两点距离为几何知识。#include<cstdio> #include<algorithm> #include<iostream> #include<cmath> using namespace std; struct edge{ int x,y; double v; }e[20000]; int fa[200],am[200]; double a原创 2016-02-25 21:03:56 · 452 阅读 · 0 评论 -
poj-1258-最小生成树kruskal模板
#include<cstdio> #include<cstring> #include<iostream> #include<algorithm> using namespace std; int n,l1,a,fa[200],am[200]; struct edge{ int x,y,v; }e[20000]; void init() { for(int i=0;i<n;i++)原创 2016-01-11 17:24:05 · 571 阅读 · 0 评论 -
poj-2485-最小生成树prim算法模板
#include<cstdio> #include<cstring> int dis[505][505],t,n,sym[1000]; void init() { memset(sym,0,sizeof(sym)); } int prim() { int ans = -1; for(int i=0;i<n;i++) { int minn = 9999原创 2016-01-11 15:27:20 · 443 阅读 · 0 评论
分享