标签:des style http color os strong io for
| Time Limit: 1000MS | Memory Limit: 65536K | |
| Total Submissions: 10634 | Accepted: 4504 |
Description
Input
Output
Sample Input
5 8 1 2 3 1 3 7 2 3 10 2 4 4 2 5 8 3 4 6 3 5 2 4 5 17
Sample Output
42
Hint
Source
题意:farmer john 很吝啬,他雇了bessie不想给他钱,bessie就想让John花更多的工程钱,即使路变得最长。
思路:最大生成树。
#include <cstdio>
#include <iostream>
#include <algorithm>
#include <cmath>
#include <cstring>
#include <stdlib.h>
using namespace std;
int n,m;
int mp[1005][1005];
int vis[1005];
int low[1005];
int prim(){
int pos,minx,res=0;
memset(vis,0,sizeof(vis));
vis[1]=1;
pos=1;
for(int i=1;i<=n;i++){
if(pos!=i)
low[i]=mp[1][i];
}
for(int i=1;i<n;i++){
minx=0;
for(int j=1;j<=n;j++){
if(!vis[j]&&minx<low[j]){
minx=low[j];
pos=j;
}
}
if(minx==0) {res=-1; break;}
res+=minx;
vis[pos]=1;
for(int j=1;j<=n;j++){
if(!vis[j]&&low[j]<mp[pos][j])
low[j]=mp[pos][j];
}
}
return res;
}
int main(){
scanf("%d%d",&n,&m);
memset(mp,-1,sizeof(mp));
for(int i=0;i<m;i++){
int a,b,c;
scanf("%d%d%d",&a,&b,&c);
if(mp[a][b]<c)
mp[a][b]=mp[b][a]=c;
}
printf("%d\n",prim());
}POJ 2377 Bad Cowtractors,布布扣,bubuko.com
标签:des style http color os strong io for
原文地址:http://blog.csdn.net/kimi_r_17/article/details/38349235