USACO oct. 09 Watering Hole
2017年7月15日
Prim算法


#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
using namespace std;#define maxx 300 + 100
int N;
struct Vertex{int id, price;
}V[maxx];
int E[maxx][maxx];
int minpay = 0;bool cmp(Vertex a, Vertex b){return a.price < b.price;}inline int FindMinPrice(int a, int b){return min(V[b].price, E[V[a].id][V[b].id]);
}void Putin()
{cin >> N;for(int i = 1; i <= N; i++){cin >> V[i].price;V[i].id = i;}for(int i = 1; i <= N; i++)for(int k = 1; k <= N; k++)cin >> E[i][k];sort(V + 1, V + 1 + N, cmp);
}int Dis[maxx];
bool Jud[maxx];void MST_PRIM()
{memset(Dis, 10, sizeof(Dis));memset(Jud, false, sizeof(Jud));Dis[V[1].id] = 0;Jud[V[1].id] = true;for(int i = 2; i <= N; i++)Dis[V[i].id] = FindMinPrice(1, i);for(int i = 1; i <= N - 1; i++){int minn = 5201314;     int sgn = -1;for(int k = 1; k <= N; k++)if(!Jud[V[k].id] && minn > Dis[V[k].id]){minn = Dis[V[k].id];sgn = k;}Jud[V[sgn].id] = true;    minpay += minn;for(int k = 1; k <= N; k++)if(!Jud[V[k].id])Dis[V[k].id] =min(Dis[V[k].id], min(E[V[k].id][V[sgn].id], V[k].price));}
}int main()
{Putin();MST_PRIM();cout << minpay + V[1].price << endl;return 0;
}

USACO oct. 09 Watering Hole相关推荐

  1. 洛谷P1550 [USACO08OCT]打井Watering Hole

    P1550 [USACO08OCT]打井Watering Hole 题目背景 John的农场缺水了!!! 题目描述 Farmer John has decided to bring water to ...

  2. [Usaco2008 Oct]Watering Hole 挖水井

    相关链接:http://begin.lydsy.com/JudgeOnline/problem.php?id=1938 描述: Description 农夫约翰决定给他的N(1<=N<=3 ...

  3. Luogu P1550 [USACO08OCT]打井Watering Hole

    0号结点:农夫John山泉天然矿泉水( by Luogu第一篇题解 #include<cstdio> #include<cstring> #include<algorit ...

  4. P1550 [USACO08OCT]打井Watering Hole

    传送门 如果没有挖井只是联通所有点就是最小生成树 但是有挖井,我们需要转换一下 把挖井操作看成 0 号点连一条边过去 然后还是最小生成树.. 因为是稠密图,所以用 prim 算法来求最小生成树 #in ...

  5. 日期转换为后端需要的格式 Fri Oct 09 2020 00:00:00 GMT+0800 (中国标准时间)

    选中的时间打印为 定义格式化方法 // 把获取到的日期传进来 dateFormat(dateData) {let date = new Date(dateData)let y = date.getFu ...

  6. POJ 2182 Lost Cows [树状数组+二分]

    Description N (2 <= N <= 8,000) cows have unique brands in the range 1..N. In a spectacular di ...

  7. POJ2182 HDU2711 Lost Cows【树状数组+线段树】

    Lost Cows Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 17113 Accepted: 10664 Descripti ...

  8. 网络安全中英文术语大全

    网络安全中英文术语大全 A 01享级持久感动(APT) 一种阿络攻击.使用复杂的技术持续对目标 政府和公司进行网络间谍活造或其他咨意活 动.遗常由具有丰富专业知识和大量安渗的 对手进行-通营与民族国家 ...

  9. 网络安全中英文术语总结

    网络安全中英文术语总结 按字母 A-Z 顺序排列,方便查看. A 01 高级持久威胁(APT) 一种网络攻击,使用复杂的技术持续对目标政府和公司进行网络间谍活动或其他恶意活动.通常由具有丰富专业知识和 ...

最新文章

  1. PgSQL · 特性分析 · full page write 机制
  2. Quill编辑器IOS下无法获取焦点的解决方法
  3. Python实现softmax函数
  4. 适用于Idea的面向现代TDD的Java 8 JUnit测试模板(带有Mockito和AssertJ)
  5. Linux平台上最常用的翻译工具—StarDict(星际译王)。
  6. linux下各种颜色文件的意义
  7. 【车联网】一文了解5G在车联网中的应用
  8. php 树结构遍历,php 递归遍历树
  9. 留言板小系统程序开发
  10. CRNN+CTCLoss中文手写汉字识别
  11. 大淘宝的终极商业阶段
  12. 【转】Linux删除文件未释放空间问题处理
  13. mysql mssql 性能对比_详解mysql分区实验测试--非分区表与分区表的性能对比
  14. java编写自动化脚本_java+selenium自动化脚本编写
  15. 关于游戏程序员的职业规划
  16. 2020_CIKM_Partial Relationship Aware Influence Diffusion via a Multi-channel Encoding Scheme for Soc
  17. 常用二十六大学术搜素引擎
  18. 什么命令用于撤销mysql用户的权限_下列命令中,___命令用于撤销MySQL用户对象权限。...
  19. 为什么建议大家使用 Linux 开发?爽 !!!
  20. Clearview Mac电子书阅读器

热门文章

  1. github.global.ssl.fastly.net hosts
  2. dYdX会是DeFi下一轮爆发的引擎吗?
  3. 人工智能小白日记之2准备篇
  4. expected START_TAG or END_TAG not TEXT (position: TEXT seen ...</mirror> -->\r\n
  5. Android Camera 预览拉伸问题
  6. U校园服务器维修,U校园使用指南
  7. ecg去噪 matlab,MATLAB,ECG,去噪,小波
  8. java.有空值的对象序列化_java – 如何防止Map中的空值和bean中的空字段通过Jackson序列化...
  9. linux的周期行计划任务叫做atd,linux基本命令之计划任务
  10. c++算法新水果取名