计蒜客:灌溉(生成树)

https://nanti.jisuanke.com/t/34

到了旱季农业生产的灌溉就成了一个大问题。为了保证灌溉的顺利,某县政府决定投资为各个村之间建立灌溉管道。

输入第1行包括一个整数N,表示某县的村庄的数量。(3≤N≤100),第2行-结尾为一个N×N的矩阵,表示每个村庄之间的距离。虽然在理论上,他们是N行,每行由N个用空格分隔的数组成,实际上,他们限制在80个字符,因此,某些行会紧接着另一些行。当然,对角线将会是0,因为不会有线路从第i个村到它本身(任何两个村之间的距离都不大于100000)。

输出只有一个,为修建灌溉管道将所有村庄相连在一个灌溉系统里所需的最小管道长度。

样例输入

4
0 4 9 21
4 0 8 17
9 8 0 16
21 17 16 0

样例输出

28
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               #include<stdio.h>
#define N 120
int e[N][N],book[N],dis[N];
int main()
{
	int i,j,n,m,u,v,sum,count,min,inf=99999999;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
		for(j=1;j<=n;j++)
			scanf("%d",&e[i][j]);
	for(i=1;i<=n;i++)
		dis[i]=e[1][i];
	book[1]=1;
	count=1;
	sum=0;
	while(count<n)
	{
		min=inf;
		for(i=1;i<=n;i++)
			if(book[i]==0&&min>dis[i])
			{
				u=i;
				min=dis[i];
			}
		count++;
		sum+=dis[u];
		book[u]=1;
		for(v=1;v<=n;v++)
			if(dis[v]>e[u][v])
				dis[v]=e[u][v];
	}
	printf("%d
",sum);
	return 0;
} 
原文地址:https://www.cnblogs.com/zyq1758043090/p/11852854.html