
最小生成树
vsooda
这个作者很懒,什么都没留下…
展开
-
HDU 1102
#include #include #include const int max=0x7ffffff; int map[101][101],min,v[101],n,x,y,sum,flag; void Reset(int n) { int i,j,m; memset(map,0,sizeof(map)); for(i=0;i<n;i++) { for(j=0;j<n;j++)原创 2012-02-26 20:16:09 · 663 阅读 · 0 评论 -
HDU 1301 %*C显示威力
最小生成树 #include #include #include const int max=0x7ffffff; int map[27][27],min,v[27],n,dis,m,sum,flag; char cx,cy; void Reset(int n) { int i,j; map[n][n]; memset(map,0,sizeof(map)); for(i=0;i<n-原创 2012-02-26 19:55:24 · 639 阅读 · 0 评论 -
HDU 1233 还是畅通工程
#include #include #include const int MAX=100000000; int map[101][101],min,sum; int main() { int i,j,n,x,y,m,v[101],flag,dis; while(scanf("%d",&n),n) { map[n][n]; memset(map,0,sizeof(map)); m原创 2012-02-26 18:24:38 · 587 阅读 · 0 评论 -
prim最小生成树模板
int minTree(int n) { int i,j; memset(v,0,sizeof(v)); v[0]=1; sum=0; for(i=1;i<n;i++) { min=max; for(j=0;j<n;j++) { if(!v[j]&&map[0][j]<min) { min=map[0][j]; flag=j; } }原创 2012-02-26 20:17:00 · 1805 阅读 · 1 评论 -
HDU 1875
最小生成树的一种求法,关键还是判断两个点是否在一个回路上即并查集的运用 #include #include #include #include using namespace std; int num[210]; int pre[210]; double length; struct edge { int x, y; double w; }e[9999]; void makeS原创 2012-02-26 22:04:00 · 1069 阅读 · 2 评论 -
HDU 1879
#include #include #include #include using namespace std ; #define MEM(a, v) memset (a, v, sizeof (a)) // a for address, v for value #define max(x, y) ((x) > (y) ? (原创 2012-02-28 11:01:20 · 862 阅读 · 0 评论 -
HDU 1863
#include using namespace std; #define N 9999999 int map[101][101]; int mark[101]; bool visited[101]; int n,m; void prim() { int i,j,k,sum=0,min; int flag=1; memset(mark,0,sizeof(mark)); memset(vis原创 2012-02-28 12:38:42 · 528 阅读 · 0 评论