最短路 poj1125
输入一个n表示有n个点,接下来n行,每行(假设是u)第一个数字m表示有m对数字(每一对两个数字v,w,表示u到v的时间w),后面接m对数字。找一个起点,它到其他点所花费的时间(求起点到其他点距离的最大值)是最小的(有点绕)。
思路:用floyd求出点和点的最小距离,然后遍历每个点为起点的情况,找出每个点作为起点到其他点所花费时间最大值里的最小值
代码:
#include<iostream> #include<cstring> #include<algorithm> using namespace std; #define inf 0x3f3f3f int map[105][105]; int n,m,k,t; void floyd() {for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(map[i][j]>map[i][k]+map[k][j])map[i][j]=map[i][k]+map[k][j];}}} } int main() {while((cin>>n)&&n){int v,w;memset(map,inf,sizeof(map));for(int i=1;i<=n;i++){cin>>m;for(int j=0;j<m;j++){cin>>v>>w;if(map[i][v]>w)map[i][v]=w;}}floyd();int ans=inf,u=0;for(int i=1;i<=n;i++){int max1=0;for(int j=1;j<=n;j++){if(i!=j){if(map[i][j]!=inf)max1=max(map[i][j],max1);elsebreak; //无法到达所有点,直接跳出循环 }}if(ans>max1)//更新ans和u {ans=max1;u=i;}}if(ans!=inf)cout<<u<<' '<<ans<<endl;elsecout<<"disjoint"<<endl;}return 0;}
转载于:https://www.cnblogs.com/6262369sss/p/9370273.html
最短路 poj1125相关推荐
- POJ-1125 Stockbroker Grapevine 最短路
这题要处理的地方的就是一个人可以同时向多个人传递消息,也就是说一条消息的传递时间由最长的那一条路径所决定,因为可以同时进行嘛,所以就求某一点到所有点的最短路,然后再寻找一条最长的路劲,枚举每个顶点作为 ...
- [C] [最短路] 只有5行的算法:Floyd-Warshall
终于学到求最短路了,终于来到我最喜欢的算法--Floyd-Warshall了!今天还有点小激动呢! 我喜欢它,当然是因为它逻辑十分简单咯!真的只有5行诶! Floyd-Warshall算法 题目描述 ...
- BZOJ4152 AMPPZ2014 The Captain(最短路)
事实上每次走到横坐标或纵坐标最接近的点一定可以取得最优方案.于是这样连边跑最短路就可以了. #include<iostream> #include<cstdio> #inclu ...
- Codeforces.1051F.The Shortest Statement(最短路Dijkstra)
题目链接 先随便建一棵树. 如果两个点(u,v)不经过非树边,它们的dis可以直接算. 如果两个点经过非树边呢?即它们一定要经过该边的两个端点,可以直接用这两个点到 u,v 的最短路更新答案. 所以枚 ...
- BZOJ1491: [NOI2007]社交网络(Floyd 最短路计数)
Time Limit: 10 Sec Memory Limit: 64 MB Submit: 2343 Solved: 1266 [Submit][Status][Discuss] Descrip ...
- HDU1811 Rank of Tetris 拓扑排序+并查集 OR 差分约束最短路+并查集
题目链接 题意:就是给你一堆关系,看能不能排出个确定的顺序 做法: 1. 拓扑排序+并查集 应该很容易想到的一种思路,大于小于建立单向边.对于相等的呢,就把他们缩成一个点.就用并查集缩成一个点就行了 ...
- E:By Elevator or Stairs? CF595 DP最短路
题目链接 比赛的时候一看,这不是最短路吗,然后敲了一个最短路. 然后比赛完发现大家基本都写的dp,我真是个憨憨,dp3行 最短路就建个简单的图,dp就是从上一维转化过来就是了 优秀的dp: //#pr ...
- The Shortest Statement CodeForces - 1051F LCA+最短路
太弱了... 一开始看到题感觉是跑一个最小生成树在上边进行LCA就行了,但是发现过不了样例,然后就是就想到了之前做过类似做法的题目,就是非生成树上的边最多只有21条,然后就那些边记录下来,通过每一条边 ...
- JZOJ #4722 跳楼机 (最短路模型的完美转化)
题目描述: 给出$h,x,y,z$,求在$h$以内,$x,y,z$可以凑出多少个不同的数.$(1\leq{h}\leq{10^{18}},1\leq{x,y,z}\leq{10^5})$ 解题思路: ...
最新文章
- javascript 红宝书笔记之函数、变量、参数、作用域
- 正则表达式(overall)
- JavaSE(二十二)——TCP协议的三次握手
- 微擎小程序怎么配置服务器域名,随便撸源码源码微擎小程序通用配置图文教程,教会你怎么配置微擎小程序!...
- VC++ 中 try-catch-finally 语句 如何在获取正常信息是写一些操作语句
- 建议把英语改成选修的计算机老师,越来越多的人建议高中将英语作为选修课,而非必修课,您认同吗?...
- JavaScript创建命名空间
- 设置框开始隐藏状态html5,小猿圈分享HTML5中form如何关闭自动完成功能的方法
- 数据结构与算法-常见时间复杂度
- html图片圆点切换,JQuery和html+css实现带小圆点和左右按钮的轮播图实例
- B1.Java基础部分一
- php mail函数_php 发送邮件函数
- 敏捷开发用户故事系列之七:用户故事与MVC
- halcon例程讲解_halcon例程学习笔记(6)
- 2012第51周星期二
- 唐宇迪学习笔记9:逻辑回归与梯度下降策略
- 太阳直射点纬度计算公式_计算太阳高度角和太阳方位角确定太阳在天空中的位置...
- 2008 NBA 全明星周未之扣篮大赛
- 安装谷歌浏览器步骤:
- aip文档服务器已停止工作,ColdFusion的11 REST API服务似乎意外地停止工作
热门文章
- MapReduce 应用:TF-IDF 分布式实现
- 【转】Linux查看文件编码格式及文件编码转换
- python限制输入值范围_求python 中if 里如何设定一个值的范围
- linux 重定向 2gt;gt;,编写我自己的linux shell I / O重定向’gt;’函数
- 用flood测试web服务器响应时间,用Flood测试Web服务器响应时间(1)
- gpu的单位表示_GPU编程1--GPU中的基本概念
- 云原生体系下 Serverless 弹性探索与实践
- “云”端的语雀:用 JavaScript 全栈打造商业级应用
- mysql大规模读写性能_十招搞定 MySQL 大规模数据库的性能和伸缩性优化
- 参考文献 如何控制别自动换行_word里插入参考文献时,出现自动换行,排版很难看,怎么解决?有图!求大神指教!...