POJ 1258 Agri-Net(最小生成树 Prim 模版题)
来源:互联网 发布:电商美工的前景 编辑:程序博客网 时间:2024/06/05 21:25
Agri-Net
大意:新镇长竞选宣言就是将网络带到每一个农场,给出农场个数,两两之间建光缆的耗费,求所有都联通的最小耗费。
思路:最小生成树,因为边比较稠密,用Prim做。
PS;对于比较稠密的图,用Prim,对于比较稀疏的图,用 Kruskal。Kruskal是找边的过程,稀疏的话会比较快。
#include <stdio.h>#include <string.h>#define INF 0x3f3f3f3fint dis[110];int Map[110][110];int n;int Ans;int min(int a, int b){ return a > b ? b : a;}void Prim(){ int Min_ele, Min_node; memset(dis, INF, sizeof(dis)); Ans = 0; int r = 1; for(int i = 1; i < n; i++) { dis[r] = -1; Min_ele = INF; for(int j = 1; j <= n; j++) { if(dis[j] >= 0) { dis[j] = min(dis[j], Map[r][j]); if(dis[j] < Min_ele) { Min_ele = dis[j]; Min_node = j; } } } r = Min_node; Ans += Min_ele; }}void Solve(){ while(~scanf("%d", &n)) { memset(Map, 0, sizeof(Map)); for(int i = 1; i <= n; i++) { for(int j = 1; j <= n; j++) { scanf("%d", &Map[i][j]); } } Prim(); printf("%d\n", Ans); }}int main(){ Solve(); return 0;}
0 0
- POJ 1258 Agri-Net(最小生成树 Prim 模版题)
- POJ 1258:Agri-Net Prim最小生成树模板题
- poj 1258 Agri-Net ( 最小生成树[模板题]--prim )
- POJ 1258:Agri-Net(最小生成树&&prim)
- POJ 1258-Agri-Net(最小生成树prim)
- poj 1258 Agri-Net (最小生成树 prim)
- poj-1258 Agri-Net(最小生成树 Prim算法)
- POJ 1258 Agri-Net(最小生成树-Prim)
- poj 1258 Agri-Net(prim求最小生成树)
- POJ-1258 Agri-Net(最小生成树[Prim])
- POJ 1258 Agri-Net (最小生成树/Prim)
- POJ 1258 Agri-Net (最小生成树 prim)
- POJ 1258 Agri-Net(最小生成树-Prim)
- POJ 1258-Agri Net 最小生成树Prim算法
- poj 1258Agri-Net-最小生成树prim
- Poj 1258 Agri-Net (最小生成树Prim & Kruskal)
- POJ 1258 Agri-Net 图论 prim算法 最小生成树
- POJ 1258 Agri-Net 最小生成树 Prim
- Windows使用Xmanager远程登录Centos方法
- HDOJ-2026
- Ubuntu打开终端的方法三种
- 用shell将时间字符串与时间戳互转
- IOS开发之UIWebView实际应用(一)
- POJ 1258 Agri-Net(最小生成树 Prim 模版题)
- ORACLE/PLSQL: TRIM FUNCTION
- 对比 NFC,Apple iOS 7 类似解决方案 iBeacons 的优缺点
- 会话COOKIE 持久COOKIE
- SQLite加密
- VC中用于调试程序的几个宏的使用技巧
- 类内的类型转换
- JavaScript正则表达式
- CentOS6 Linux下mail命令配置及使用