zoj 1586 prim

简介: http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=586 #include <cstdio> #include <cstring> #define MAX 1000000 int Edge[1010][1010]; int adapter[1010]; int lowcost[1010]

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=586

#include <cstdio>
#include <cstring>
#define MAX 1000000
int Edge[1010][1010];
int adapter[1010];
int lowcost[1010];
int t,n;
void init( )
{
	int i, k;
	scanf( "%d", &n );
	for( i = 0; i < n; i++ )
		scanf ( "%d", &adapter[i] );
	for( i = 0; i < n; i++ )
	{
		for( k = 0; k < n; k++ )
		{
			scanf( "%d", &Edge[i][k] );
			if( i == k ) 
                Edge[i][k] = MAX;
			else 
			 Edge[i][k] += adapter[i] + adapter[k];
		}
	}
	memset( lowcost, 0, sizeof ( lowcost ) );
}
void prim( )
{
	int i, k;
	int sum = 0;
	lowcost[0] = -1;
	for( i = 1; i < n; i ++ )
		lowcost[i] = Edge[0][i];
	for( i = 1; i < n; i++ )
	{
		int min = MAX, j;
		for( k = 0; k < n; k++ )
		{
			if( lowcost[k] != -1  &&  lowcost[k] < min )
			{
				j = k;
				min = lowcost[k];
			}
		}
		sum += min;
		lowcost[j] = -1;
		for( k = 0; k < n; k ++ )
		{
			if( Edge[j][k] < lowcost[k] )
				lowcost[k] = Edge[j][k];
		}
	}
	printf( "%d\n", sum );
}
int main( )
{
    //freopen("1.txt","r",stdin);
	scanf ( "%d", &t );
	for ( int i = 0; i < t; i ++ )
	{
		init( );
		prim( );
	}
	return 0;
}

  

目录
相关文章
|
算法
1091 zoj Knight Moves的BFS算法和DFS
1091 zoj Knight Moves的BFS算法和DFS
70 0
|
图形学 C++
ZOJ1117 POJ1521 HDU1053 Huffman编码
Huffman编码的思想就是贪心,我们这里使用stl里的优先队列,priority_queue使用堆进行优化,虽然自己也可以写一个堆,但我感觉对于这道题有点主次不分了,再次感觉到stl确实是一个很强大的东西。
57 0
HDOJ 1081(ZOJ 1074) To The Max(动态规划)
HDOJ 1081(ZOJ 1074) To The Max(动态规划)
86 0
HDOJ 1081(ZOJ 1074) To The Max(动态规划)
|
机器学习/深度学习
POJ 1775 (ZOJ 2358) Sum of Factorials
POJ 1775 (ZOJ 2358) Sum of Factorials
151 0
|
算法 计算机视觉 存储
【HDU 2586 How far away?】LCA问题 Tarjan算法
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2586 题意:给出一棵n个节点的无根树,每条边有各自的权值。给出m个查询,对于每条查询返回节点u到v的最短路径的权值和,按查询顺序输出结果。
1064 0
|
人工智能 机器学习/深度学习
POJ 1775 (ZOJ 2358) Sum of Factorials
Description John von Neumann, b. Dec. 28, 1903, d. Feb. 8, 1957, was a Hungarian-American mathematician who made important contributions t...
1156 0

热门文章

最新文章