POJ 1258 Agri-Net 最小生成树 Prim算法
2014-11-25 16:01
465 查看
题意很明显,就是要求最小生成树,以前写过一个用kruskal的最小生成树,感觉那个比较好理解,基本就是在用并查集,而这个prim更像是是Dijkstra,跟那个只是查了一点而已。
#include<stdio.h> #include<string.h> #define inf 100000000 int mp[110][110],a[110]; bool used[110]; int n; int solve() { int k,temp=inf,ans=0; for(int i=1;i<=n;i++) a[i]=mp[1][i]; used[1]=true; for(int i=1;i<n;i++) { temp=inf; for(int j=1;j<=n;j++) { if(a[j]<temp&&!used[j]) { temp=a[j]; k=j; } } used[k]=true; // printf("%d\n",temp); for(int j=1;j<=n;j++) { if(mp[k][j]<a[j])//这里就是跟dijkstra不同的地方!! a[j]=mp[k][j]; } ans+=temp; } return ans; } int main() { while(scanf("%d",&n)!=EOF) { for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) scanf("%d",&mp[i][j]); memset(used,false,sizeof(used)); printf("%d\n",solve()); } return 0; }
相关文章推荐
- POJ 1258 Agri-Net(最小生成树prim算法)
- 最小生成树问题·POJ-1258 Agri-Net·prim算法
- POJ 1258 Agri-Net 图论 prim算法 最小生成树
- 【最小生成树之prim算法】POJ-1258---Agri-Net
- POJ1258 Agri-Net(最小生成树,prim算法)
- 最小生成树之Prim算法---POJ1258---Agri-Net
- POJ 1258 Agri-Net(最小生成树Prim算法)
- poj-1258 Agri-Net(最小生成树 Prim算法)
- POJ 1258 Agri-Net 最小生成树 Prim算法
- POJ 1258 Agri-Net(最小生成树Prim算法)
- POJ1258,Agri-Net,明显的最小生成树
- Agri-Net - POJ 1258 最小生成树
- poj 1258 Agri-Net 最小生成树 kruskal
- Poj1258_Agri-Net(最小生成树)
- Poj1258_Agri-Net(最小生成树)
- Poj1258_Agri-Net(最小生成树)
- poj 1258 Agri-Net(最小生成树)
- POJ 1258 Agri-Net 最小生成树(Kruskal算法入门)
- POJ 1258 Agri-Net 【最小生成树】
- POJ 1258 Agri-Net (最小生成树入门题目)