POJ1258 Agri-Net【最小生成树】

简介:

 

复制代码
Problem:1258   User: qq1203456195
Memory: 208K   Time: 16MS
Language: C   Result: Accepted

#include <stdio.h> #include <stdlib.h> #include <string.h> #define N 105 #define MAX 100005 int visited[N],closet[N],Metr[N][N]; int n; int prim() { int i,ms,next,sum,j; memset(visited,0,sizeof(visited)); for (i=0;i<n;i++) closet[i]=Metr[0][i]; visited[0]=1; sum=0; for (j=1;j<n;j++) { ms=MAX; for (i=0;i<n;i++) { if (!visited[i]&&closet[i]<ms) { ms=closet[i]; next=i; } } sum+=ms; visited[next]=1; for (i=0;i<n;i++) if (!visited[i]&&Metr[next][i]<closet[i]) closet[i]=Metr[next][i]; } return sum; } int main() { int i,j; while(scanf("%d",&n)!=EOF) { for (i=0;i<n;i++) for (j=0;j<n;j++) scanf("%d",&Metr[i][j]); printf("%d\n",prim()); } return 0; }
复制代码

 


本文转自ZH奶酪博客园博客,原文链接:http://www.cnblogs.com/CheeseZH/archive/2012/04/15/2450739.html,如需转载请自行联系原作者

相关文章
|
存储 容器
华为机试HJ39:判断两个IP是否属于同一子网
华为机试HJ39:判断两个IP是否属于同一子网
[POJ 1236] Network of Schools | Tarjan缩点
Description A number of schools are connected to a computer network. Agreements have been developed among those schools: each school maintains a list of schools to which it distributes software (the “receiving schools”).
140 0
[POJ 1236] Network of Schools | Tarjan缩点
|
算法
ZOJ(ZJU) 1002 Fire Net(深搜)
ZOJ(ZJU) 1002 Fire Net(深搜)
104 0
ZOJ(ZJU) 1002 Fire Net(深搜)
|
定位技术 机器学习/深度学习
|
算法 数据建模
【POJ 1236 Network of Schools】强联通分量问题 Tarjan算法,缩点
题目链接:http://poj.org/problem?id=1236 题意:给定一个表示n所学校网络连通关系的有向图。现要通过网络分发软件,规则是:若顶点u,v存在通路,发给u,则v可以通过网络从u接收到。
1190 0