poj3615Cow Hurdles(floyd)

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
#define inf 9999999
int n,m,t;
int map[500][500];
int main()
{
	scanf("%d %d %d",&n,&m,&t);
	for(int i=1;i<=n;i++)
	{
		for(int j=1;j<=n;j++)
		{
			map[i][j]=inf;
		}
		map[i][i]=0;
	}
	for(int i=1;i<=m;i++)
	{
		int a,b,c;
		scanf("%d %d %d",&a,&b,&c);
		map[a][b]=c;
	}
	for(int k=1;k<=n;k++)
	{
		for(int i=1;i<=n;i++)
		{
			for(int j=1;j<=n;j++)
			{
				if(map[i][k]<inf&&map[k][j]<inf)
				{
					map[i][j]=min(map[i][j],max(map[i][k],map[k][j]));
				}
			}
		}
	}
	while(t--)
	{
		int a,b;
		scanf("%d %d",&a,&b);
		if(map[a][b]==inf)
		{
			printf("-1\n");
		}else
		{
			printf("%d\n",map[a][b]);
		}
	}
}

發佈了59 篇原創文章 · 獲贊 1 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章