【Step1】【floyd】poj1125-Stockbroker Grapevine

题目链接

题目大意

一个有n个点的图中,求一个点,使得这个点到其他点的最短路的最长距离最短。

输入数据中,有多组测试。每组测试第一行为n,接下来n行,每行第一个x,xi表示第i个点和x个点有路径。接下来x个数对a,b表示i到a的代价为b

最后输出这个点和最长距离。

 

这道题是显而易见的最短路了。但是我们发现这个题的起点不确定。所以不是单源最短路,不能用SPFA

这里介绍另外一种算法:floyd算法。

floyd算法主要解决的是多源最短路问题,范围比SPFA更广,但时间复杂度是O(n^3)。再看题目n≤100,符合条件。

floyd算法,简而言之,就是找i,j两个点,然后找一个中间点k,如果i->k+k->j的最短路径比当前i->j更短,就更新i->j的最短路。

代码如下:

for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(f[i][j]>f[i][k]+f[k][j])//f存i->j的最短路{f[i][j]=f[i][k]+f[k][j];}}}}  

最后统计答案时,对于每一个点i,看看它到其他点的最短路的最大值。这样,这道题的代码就呼之欲出了。

参考代码

#include<cstdio>
#include<cstdlib>
#include<cstring>
int n;
int f[105][105];
int main()
{while(1){scanf("%d",&n);if(n==0)break;memset(f,63,sizeof(f));for(int i=1;i<=n;i++){f[i][i]=0;int x;scanf("%d",&x);for(int j=1;j<=x;j++){int soy1,soy2;scanf("%d %d",&soy1,&soy2);f[i][soy1]=soy2;}}for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){if(f[i][j]>f[i][k]+f[k][j]){f[i][j]=f[i][k]+f[k][j];}}}}/*for(int i=1;i<=n;i++){for(int j=1;j<=n;j++)printf("%d ",f[i][j]>10000?-1:f[i][j]);printf("\n");}*/int ans=2147483647,ans2=-1;for(int i=1;i<=n;i++){int tt=-1;for(int j=1;j<=n;j++){if(f[i][j]>999999){tt=-1;break;}if(f[i][j]>tt)tt=f[i][j];}if(tt!=-1 && tt<ans){ans=tt;ans2=i;}}if(ans2==-1)printf("disjoint\n");else printf("%d %d\n",ans2,ans);}return 0;
}
View Code

 

转载于:https://www.cnblogs.com/AFOer-lhy/p/7826007.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/268106.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

只要付出就有回报

今天是个特别的日子——2010年10月10日——101010,。早上上班的路上就看到很多结婚的车队&#xff0c;很是壮观。我的小表妹也是今天结婚&#xff0c;可惜要上班无法参加她的婚礼。据说很是热闹&#xff0c;人不多&#xff0c;4桌洋人&#xff0c;4桌国人。呵呵。。。表妹在英国…

CUDA

CUDA学习&#xff1a;CUDA9.0VS2017win10详细配置 转载于:https://www.cnblogs.com/q735613050/p/7826356.html

PPC系统常见启动项(StartUp)解说

以下所指的删除都是在“开始---资源管理器---windows---StartUp”里删除&#xff0c;只是关闭其开机启动&#xff0c;以达最大限度的节约程序使用内存的目的&#xff0c;并非删除其程序 1. CapNotify 通知气泡&#xff08;短信、未接电话&#xff09;&#xff0c;可以删除。。…

Java动态代理深入解析

分享来源&#xff1a;微信号&#xff1a;java一日一条 要想了解Java动态代理&#xff0c;首先要了解什么叫做代理&#xff0c;熟悉设计模式的朋友一定知道在Gof总结的23种设计模式中&#xff0c;有一种叫做代理(Proxy)的对象结构型模式&#xff0c;动态代理中的代理&#xff0c…

网站编辑工作

1、发现新的信息源。在这个Copy的时代里&#xff0c;不知道到哪Copy是件恼人的事。别只盯着新浪或者DoNews滚动&#xff0c;这样是省事&#xff0c;但永远慢一步。而且&#xff0c;别人的选择未必适合贵媒体的定位。 a)定期查看导航网站是否增加了新的内容网站。各门户网站、…

和硕裁员4.5万真相调查:工人入不敷出无奈走人

和硕裁员4.5万真相调查:工人入不敷出无奈走人http://fellow.51cto.com 2008-12-12 16:40 佚名 每日经济新闻 我要评论(0)摘要&#xff1a;业界知情人士称&#xff0c;和硕南汇、苏州两厂“裁员过半”&#xff1b;但其母公司华硕公司称&#xff0c;“我们的代工厂无任何裁员…

exchange命令整理

setup /ps(setup /prepareschema) setup /p /on:wnt (setup /preparead /organizationname:wnt) setup /preparedomain scwcmd register /kbname:e:"E:\exchange\Scripts\exchange2007.xml" 命令成功完成,这个命令要在CMD下做&#xff08;向本地安全数据库注册exchan…

Maven 异常

Archive for required library: *****org/javassist/javassist/3.21.0-GA/javassist-3.21.0-GA.jar in project SpringBootTest cannot be read or is not a valid ZIP file出现以上错误&#xff0c;表示下载的jar包不可多&#xff0c;多半原因是下载过程中中途网络中断或其它原…

Bigtable:一个分布式的结构化数据存储系统(转)

为了方便部分博友和我自己&#xff0c;我特地将BigTable的中文版论文转载到本博客&#xff0c;原文地址在Google Labs&#xff0c;译者为alex。 Wiki百科关于 BigTable的解释&#xff1a; http://en.wikipedia.org/wiki/BigTable BigTable 英文原版&#xff1a;http://labs.goo…

spring面试BeanFactory的作用

DefaultListableBeanFactory结构

openstack一键安装脚本(转载)

#!/bin/sh # openstack pike 单机 一键安装 # 环境 centos 7.4.1708 x86_64 # 更多内容 http://dwz.cn/openstack # Myde by Elven[[ uname -r *el7* ]] && { echo 开启安装openstack pike; } || { echo 请在CentOS7.4 环境运行;exit; }#############################…

Win7下硬盘安装Ubuntu10.10双系统

1. 事先分区 在Win7系统里&#xff0c;用Acronis Disk Director Suite给ubuntu系统分4个区&#xff1a; 名字&#xff1a;/swap 格式&#xff1a;swap 大小&#xff1a;3GB 名字&#xff1a;/boot 格式&#xff1a;ext3 大小&#xff1a;2GB 名字&#xff1a;/home 格式&#x…

浅谈性能测试分析

性能测试工程师基本上都能够掌握利用测试工具来作负载、压力测试&#xff0c;但多数人对怎样去分析工具收集到的测试结果感到无从下手&#xff0c;下面我就把个人工作中的体会和收集到的有关资料整理出来&#xff0c;希望能对大家分析测试结果有所帮助。 分析原则&#xff1a; …

Bean的生命周期回掉方法

上面三个是在bean的生命周期的初始化调用的 下面三个是在bean的生命周期的销毁调用的

【STM32 .Net MF开发板学习-18】GPRS遥控智能小车

有了Wifi间接控制智能小车的经验&#xff0c;很自然的想到&#xff0c;也可以通过GPRS远程遥控智能小车&#xff0c;因为从通信原理上看&#xff0c;二者其实没有什么本质的不同&#xff0c;都是基于Socket的TCP通信&#xff0c;其控制环节如下&#xff1a; 手机 > GPRS&…