Prim 算法模版

例题CF 1245D
复杂度 O ( n 2 ) O(n^2) O(n2) , n为节点数

int k[maxn];
int c[maxn];
int x[maxn],y[maxn];
int dt[maxn];   //dt[i]表示节点i到起点的距离
int n;
bool vis[maxn];
int fm[maxn];

ll ct(int i,int j){
	return 1LL*(k[i]+k[j])*(abs(x[i]-x[j])+abs(y[i]-y[j]));
}

void Prim(int s){
	for(int i=1;i<=n;++i){
		dt[i]=inf;
		//dt[i]=c[i];  //初始化为inf 
	}
	dt[s]=0;
	for(int i=0;i

你可能感兴趣的:(模版)