`

POJ1125 Floyd

 
阅读更多
#include<iostream>
using namespace std;

const int MAX=105;
const int INF=1<<27;

int n;
int w[MAX][MAX];
int d[MAX][MAX];

void init(){
	int i,j;
	for(i=1;i<=n;i++){
		for(j=1;j<=n;j++){
			d[i][j]=w[i][j]=(i==j?0:INF);
		}
	}
}

void floyd(){
	int k,i,j;
	for(k=1;k<=n;k++){
		for(i=1;i<=n;i++){
			for(j=1;j<=n;j++){
				if(d[i][k]+d[k][j]<d[i][j])
					d[i][j]=d[i][k]+d[k][j];
			}
		}
	}
}

void output(){
	int startPos=-1;
	int minTime=INF;

	int i,j;
	for(i=1;i<=n;i++){
		int maxTime=-1;
		for(j=1;j<=n;j++){
			maxTime=(maxTime>d[i][j]?maxTime:d[i][j]);
		}
		if(maxTime<minTime){
			minTime=maxTime;
			startPos=i;
		}
	}

	if(minTime<INF){
		printf("%d %d\n",startPos,minTime);
	}else{
		printf("%s\n","\"disjoint\"");
	}
}

int main(){

	scanf("%d",&n);
	while(n>0){

		init();

		int i;
		for(i=1;i<=n;i++){
			int m=0;
			scanf("%d",&m);

			int count;
			for(count=1;count<=m;count++){
				int j,weight;
				scanf("%d%d",&j,&weight);
				d[i][j]=w[i][j]=weight;
			}
		}

		floyd();

		output();

		scanf("%d",&n);
	}

	system("pause");
	return 0;
}
 
分享到:
评论

相关推荐

    POJ1125-Stockbroker Grapevine【Floyd】

    【标题】"POJ1125-Stockbroker Grapevine【Floyd】"是一个编程竞赛题目,来源于北京大学的在线评测系统POJ(Problem Online Judge)。该题目主要涉及图论算法中的Floyd-Warshall算法。 【描述】"北大POJ1125-...

    POJ2253-Frogger【Floyd】

    标题中的"POJ2253-Frogger【Floyd】"是指北京大学在线编程平台POJ(Problem Set)上的第2253题——“Frogger”,这是一道编程题目,通常涉及到算法和逻辑思维。Floyd在这里指的是弗洛伊德算法,它可能在这道题的解决...

    POJ2240-Arbitrage【Floyd】

    【标题】"POJ2240-Arbitrage【Floyd】" 是一个编程竞赛题目,来源于北京大学的在线评测系统POJ(Problem Online Judge)。该题目主要涉及到图论中的Floyd-Warshall算法,是一种解决多源最短路径问题的方法。 【描述...

    poj题目分类

    * 最短路径算法:例如 Dijkstra、Bellman-Ford、Floyd、Heap+Dijkstra,例如 poj1860、poj3259、poj1062、poj2253、poj1125、poj2240。 * 最小生成树算法:例如 Prim、Kruskal,例如 poj1789、poj2485、poj1258、...

    POJ算法题目分类

    * 图的深度优先遍历和广度优先遍历:图的深度优先遍历和广度优先遍历是指遍历图的两种方式,如 poj1860、poj3259、poj1062、poj2253、poj1125、poj2240。 * 最短路径算法:最短路径算法是指计算图中两点之间的最短...

    ACM-POJ 算法训练指南

    1. **最短路径**:Dijkstra算法、Bellman-Ford算法、Floyd算法等,用于寻找两点间最短路径(poj1860, poj3259, poj1062, poj2253, poj1125, poj2240)。 2. **最小生成树**:Prim算法和Kruskal算法,用于构建图的...

    POJ分类POJ分类POJ分类POJ分类POJ分类POJ分类POJ分类

    - **例题**:poj1860, poj3259, poj1062, poj2253, poj1125, poj2240 - **解释**:最短路径算法包括Dijkstra算法、Bellman-Ford算法、Floyd算法以及堆优化的Dijkstra算法等。 ##### (3) 最小生成树算法 - **例题**...

    acm训练计划(poj的题)

    - (poj1860, poj3259, poj1062, poj2253, poj1125, poj2240):介绍迪杰斯特拉算法(Dijkstra)、贝尔曼-福特算法(Bellman-Ford)、弗洛伊德算法(Floyd)等。 - 使用堆优化的迪杰斯特拉算法。 3. **最小生成树...

    经典 的POJ 分类

    - POJ 1125、POJ 2240:Floyd算法的典型实例。 ##### 最小生成树 - **算法**: - Prim算法 - Kruskal算法 - **题目示例**: - POJ 1789、POJ 2485:Prim算法的具体应用。 - POJ 1258、POJ 3026:Kruskal算法的...

    poj各种分类

    Dijkstra算法、Bellman-Ford算法和Floyd算法分别适用于无负权边、有负权边和所有类型的加权图,而Heap-Dijkstra结合了Dijkstra算法与堆优化,提高了解决大规模图问题的效率。 #### 最小生成树 Prim算法和Kruskal...

    POJ题目简单分类(ACM)

    - **最短路径算法**:包括dijkstra、bellman-ford、floyd和heap+dijkstra,如poj1860等,用于找到节点间的最短距离。 - **最小生成树算法**:prim和kruskal算法,如poj1789,用于找到图的最小成本连接。 - **拓扑...

    acm新手刷题攻略之poj

    (https://vjudge.net/problem/POJ-1860)、[poj3259](https://vjudge.net/problem/POJ-3259)、[poj1062](https://vjudge.net/problem/POJ-1062)、[poj2253](https://vjudge.net/problem/POJ-2253)、[poj1125]...

    poj 1094代码加测试工具

    【描述】"POJ 1091拓扑排序加上Floyd_Warshall算法实现"揭示了该问题的解决方案可能基于两种算法。拓扑排序是图论中的一个概念,常用于有向无环图(DAG)中,它能将图中的节点按照一定的顺序排列,使得对于每一条有向...

    北大POJ经典结题报告

    1. **算法基础**:报告可能会首先介绍一些基本的算法知识,如排序(快速排序、归并排序、堆排序等)、搜索(深度优先搜索、广度优先搜索)、图论(最短路径算法Dijkstra、Floyd-Warshall、Prim或Kruskal最小生成树...

    POJ 分类题目 txt文件

    图论算法涉及图的数据结构和基于图的各种操作,如最短路径算法(Dijkstra、Bellman-Ford、Floyd)、最小生成树算法(Prim、Kruskal)。Dijkstra算法用于寻找图中两点间的最短路径,而Bellman-Ford算法可以处理带有负...

    POJ2531-Network Saboteur

    5. **最短路径算法**:Dijkstra's Algorithm或Floyd-Warshall Algorithm可能会被用于找到关键节点,这些节点的破坏会导致网络通信的最大影响。 6. **数据结构**:C++代码中可能使用了数组、链表、队列或堆栈等数据...

    poj.rar_poj

    7. **图论基础**:例如最短路径问题,可能会用到Dijkstra或Floyd算法。 通过分析这些源代码,我们可以学习到如何将实际问题抽象为计算机可以理解的算法模型,以及如何有效地实现这些算法。此外,代码的组织结构、...

    POJ 分类题目

    - poj1125 - poj2240 - **应用场景**:适用于寻找两点之间的最短路径问题。 **3. 最小生成树算法** - **定义**:包括 Prim 算法和 Kruskal 算法。 - **示例题目**: - poj1789 - poj2485 - poj1258 - poj3026...

    POJ1234源代码

    ### POJ1234源代码解析 #### 题目背景 POJ(Peking University Online Judge)是一个在线评测系统,提供了大量的编程题目供学习者练习。本篇将对POJ1234源代码进行详细分析,帮助读者理解其中涉及到的数据结构与...

    poj图论题目汇总

    #### 1125 Stockbroker Grapevine - Floyd - **知识点**:Floyd算法用于求解所有顶点对之间的最短路径问题。 #### 1135 Domino Effect - 最短路 - **知识点**:最短路径算法,如Dijkstra或Bellman-Ford等,用于...

Global site tag (gtag.js) - Google Analytics