POJ-3164 Command Network

最小树形图模板题,用朱刘算法

注意自环和重边的处理

#include
#include
#include
#include
#include
#include
using namespace std;
typedef long long ll;
const int N=100+10;
const double INF=9999999999.9;
double g[N][N]; //邻接矩阵,不连通初始化为INF
bool vis[N],flag[N]; //flag缩点标记
int pre[N]; //前驱

double zhuliu(int root,int n)
{
	double sum=0;
	memset(flag,false,sizeof(flag));
	pre[root]=root;
	while(true)
	{
		for(int i=1;i<=n;i++) //求最短弧
		{
			if(flag[i]||i==root) continue;
			pre[i]=i;
			for(int j=1;j<=n;j++)
				if(!flag[j]&&g[j][i]

 

你可能感兴趣的:(POJ-3164 Command Network)