POJ 1125 Stockbroker Grapevine (Floyd最短路)
Floyd算法计算每对顶点之间的最短路径的问题
题目中隐含了一个条件是一个人能够同一时候将谣言传递给多个人
题目终于的要求是时间最短。那么就要遍历一遍求出每一个点作为源点时,最长的最短路径长是多少,再求这些值其中最小的是多少,就是题目所求
#include<bits/stdc++.h>
using namespace std;
int n,x,p,t;
int m[120][120],dist[120][120],Max[120];
void floyd(int n,int m[][120],int dist[][120])
{
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{
if(m[i][j]!=0)
dist[i][j]=m[i][j];
else
dist[i][j]=INT_MAX;
}
for(int k=1;k<=n;k++)
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{
if(dist[i][k]!=INT_MAX&&dist[k][j]!=INT_MAX&&dist[i][k]+dist[k][j]<dist[i][j])
dist[i][j]=dist[i][k]+dist[k][j];
}
}
int main()
{
int n;
while(scanf("%d",&n)==1&&n)
{
memset(m,0,sizeof(m));
memset(Max,0,sizeof(Max));
for(int i=1;i<=n;i++)
{
scanf("%d",&x);
for(int j=1;j<=x;j++)
{
scanf("%d%d",&p,&t);
m[i][p]=t;
}
}
floyd(n,m,dist);
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++)
{
if(i!=j&&dist[i][j]>Max[i])
Max[i]=dist[i][j];
}
int Min=INT_MAX,ans=0;
for(int i=1;i<=n;i++)
{
if(Max[i]<Min)
{
Min=Max[i];
ans=i;
}
}
printf("%d %d\n",ans,Min);
}
return 0;
}
POJ 1125 Stockbroker Grapevine (Floyd最短路)的更多相关文章
- poj 1125  Stockbroker Grapevine(最短路 简单 floyd)
		
题目:http://poj.org/problem?id=1125 题意:给出一个社交网络,每个人有几个别人可以传播谣言,传播谣言需要时间.问要使得谣言传播的最快,应该从那个人开始传播谣言以及使得所有 ...
 - POJ 1125 Stockbroker Grapevine(最短路基础题)
		
Stockbrokers are known to overreact to rumours. You have been contracted to develop a method of spre ...
 - Poj 1125 Stockbroker Grapevine(Floyd算法求结点对的最短路径问题)
		
一.Description Stockbrokers are known to overreact to rumours. You have been contracted to develop a ...
 - 最短路(Floyd_Warshall) POJ 1125  Stockbroker Grapevine
		
题目传送门 /* 最短路:Floyd模板题 主要是两点最短的距离和起始位置 http://blog.csdn.net/y990041769/article/details/37955253 */ #i ...
 - POJ 1125 Stockbroker Grapevine【floyd简单应用】
		
链接: http://poj.org/problem?id=1125 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=22010#probl ...
 - OpenJudge/Poj 1125 Stockbroker Grapevine
		
1.链接地址: http://poj.org/problem?id=1125 http://bailian.openjudge.cn/practice/1125 2.题目: Stockbroker G ...
 - poj 1125 Stockbroker Grapevine(多源最短)
		
id=1125">链接:poj 1125 题意:输入n个经纪人,以及他们之间传播谣言所需的时间, 问从哪个人開始传播使得全部人知道所需时间最少.这个最少时间是多少 分析:由于谣言传播是 ...
 - POJ 1125 Stockbroker Grapevine
		
Stockbroker Grapevine Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 33141 Accepted: ...
 - poj 1125 Stockbroker Grapevine dijkstra算法实现最短路径
		
点击打开链接 Stockbroker Grapevine Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 23760 Ac ...
 
随机推荐
- (16)  Cloudflare pki公钥基础设施
			
该工具组共有8个工具 1.cfssl 常用的可用指令: sign signs a certificate bundle build a certificate bundle genkey genera ...
 - 关于 vertical-align
			
默认情况下(行内基线位置 = 行内元素最大高度): 如果对这个正方形使用 vertival-align:middle.在最大高度的元素上使用负值(middle = - 50% * 元素高度),可以提升 ...
 - tomcat 403错误和ls: cannot open directory '.': Permission denied
			
在centos7 linux系统上使用docker进行tomcat部署项目测试的时候发现第一个错误:浏览器返回403 错误,显然是一个权限问题,禁止访问.下面是我一步一步的操作: 1 使用的docke ...
 - 比特币 3角对冲python代码
			
3角对冲原理 基础货币 base, 兑换货币 quote, 中间货币 mid. 市场分为3个市场 p3: base_quote p2: quote_mid p1: quote_mid 代码逻辑 1, ...
 - tornado框架基础08-sqlalchemy表关系和简单登录注册
			
01 一对一表关系 Module 需要先创建对应的 Module ,这里采用之前建立好的 User 和 UserDetails relationship from sqlalchemy.orm imp ...
 - python-基本运算符(解压缩-必考)
			
基本运算符 算术运算符 x =10 y =20 print(x+y) 30 print(x-y) -10 print(x*y) 200 print(x/y) 0.5 print(x%y)#取余 10 ...
 - mysql 常用命令(一)
			
1. 函数向日期添加指定的时间间隔 DATE_ADD(date,INTERVAL expr type)eg:DATE_ADD(CURDATE(),INTERVAL 1 MONTH) //在当前时间加一 ...
 - java环境配置—配置Tomcat8环境
			
先安装JDK,配置好jdk环境后再配置Tomcat 8 配置环境变量: TOMCAT_HOME:D:\Program Files\apache-tomcat-8.0.28 CATALINA_HOME: ...
 - [luoguP2622] 关灯问题II(状压最短路)
			
传送门 本以为是状压DP,但是有后效性. 所以写一手状压spfa #include <queue> #include <cstdio> #include <cstring ...
 - JAVA自定义监听器的示例代码
			
JAVA用户自定义事件监听完整例子 JAVA用户自定义事件监听完整例子- —sunfruit 很多介绍用户自定义事件都没有例子,或是例子不全,下面写了一个完整的例子,并写入了注释以便参考,完整 ...