poj 1125 最短路问题

原创 2012年03月25日 10:49:14

额,刚开始都不带看清楚题意的,今天阳光很好,心情也好,下午准备去玩。。。。

#include<cstdio>
#include<cstdlib>
#include<iostream>
#include<algorithm>
#include<vector>
#include<cstring>
using namespace std;

#define MAX 1000
#define INF (1<<20)
int dist[MAX][MAX];
int point, maxsize, minsize;
void init(int n)
{
 for(int i=1; i<=n; i++)
 for(int j=1; j<=n; j++)
    dist[i][j]=(i==j? 0: INF);
    int k, v, w;
    for(int i=1;i<=n; i++)
    {
      scanf("%d",&k);
      while(k--)
      {
       scanf("%d %d", &v, &w);
       dist[i][v] = w;
      }
    }
}

int floyd(int n)
{
    int i, j, k;
    for(i=1; i<=n; i++)
    for(j=1; j<=n; j++)
    for(k=1; k<=n; k++)
    if(dist[j][k]>dist[j][i] + dist[i][k])
    dist[j][k] = dist[j][i] + dist[i][k];
  return 0;  
}

int search(int n)
{
    int i,j;
     minsize = INF;
    for(i=1; i<=n; i++)
    {
      maxsize = 0;
     for(int j=1; j<=n; j++)
     if(dist[i][j]>maxsize)
     maxsize = dist[i][j];
     if(maxsize < minsize)
     {
      minsize = maxsize;
      point = i;
     }
    }
 return 0;
}
int main()
{
    int n;
    while(scanf("%d",&n)&&n)
    {
     init(n);
     floyd(n);
     search(n);
     if(minsize==INF)
     printf("disjoint\n");
     else
     printf("%d %d\n",point, minsize);
    }
   system("pause");
   return 0;
}


POJ1125 股市谣言传播 图论(Floyd最短路)

题目概述: 这道题的大意是说,在股市中特定的人之间都有各自的联系,且对于每一条关系,从一个人传递谣言到另一个人的时间是不同的。然后我们的目标是要散布一条谣言,判断出应该从谁开始传播,才可以让...
  • Oh233
  • Oh233
  • 2015年01月01日 21:10
  • 456

poj1125 Stockbroker Grapevine 最短路 dijkstral + 优先队列

// poj1125 Stockbroker Grapevine 最短路 dijkstral + 优先队列 // // 一个模板吧,留着纪念 #include #include #i...

poj 1125 (求起点的最短路)

题意:有n个人每个人可以把谣言传给一些人,传给每个人有一定的时间,求出你把谣言传给谁,让所有的人都知道的时间最短。 思路:枚举每个点为起点,到所有点的距离的最大值就是该点为起点所消耗的时间,求出最小...

POJ 1125 Stockbroker Grapevine(最短路练习)

题目链接:http://poj.org/problem?id=1125 Stockbroker Grapevine Time Limit: 1000MS   Memor...
  • YJX_xx
  • YJX_xx
  • 2014年07月30日 16:31
  • 387

POJ 1125 Stockbroker Grapevine 【最短路(Floyd算法)】

Description Stockbrokers are known to overreact to rumours. You have been contracted to develop a me...

POJ 1125 - Stockbroker Grapevine(最短路`Floyd)

Description Stockbrokers are known to overreact to rumours. You have been contracted to develop a...

poj 1125 Stockbroker Grapevine(多源最短路)

题意:输入n个经纪人,以及他们之间传播谣言所需的时间, 问从哪个人开始传播使得所有人知道所需时间最少,这个最少时间是多少 分析:因为谣言传播是同时的,对于某条路径使得所有人都知道的时间,不是时间的总和...

poj 1125 Stockbroker Grapevine (Floyd最短路)【模板】

Stockbrokers are known to overreact to rumours. You have been contracted to develop a method of spre...

最短路poj 1125

题目:poj1125Stockbroker Grapevine 题意:此题题意远比题目难 首先,题目可能有多组测试数据,每个测试数据的第一行为经纪人数量N(当N=0时,输入数据结束),...

poj 1502 最短路(类似于1125)

题意:就是求1到其它节点最短路中最大的,因为消息可以同时传播,类似于poj 1125 思路:floyd,最后枚举1到其它节点的最短路,求出其中最大的输出 #include #include #de...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:poj 1125 最短路问题
举报原因:
原因补充:

(最多只允许输入30个字)