本文主要是介绍poj 3615 Cow Hurdles,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
赤裸裸的floyd,思路很直接。很容易想到。
/*
POJ: 3615 Cow Hurdles
*/
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>#define MaxN 305
#define MaxD (1 << 20)using namespace std;long map[MaxN][MaxN];
int n, m, t;void solve()
{for(int i = 1; i <= n; i++)for(int j = 1; j <= n; j++)for(int k = 1; k <= n; k++)map[j][k] = min(map[j][k], max(map[j][i], map[i][k]));
}int main()
{//freopen("data.in", "rb", stdin);while(scanf("%d%d%d", &n, &m, &t) != EOF) {for(int i = 0; i <= n; i++) {for(int j = 0; j <= n; j++) {map[i][j] = MaxD;}}for(int i = 0; i < m; i++) {int a, b;long c;scanf("%d%d%ld", &a, &b, &c);map[a][b] = c;}solve();for(int i = 0; i < t; i++) {int a, b;scanf("%d%d", &a, &b);if(map[a][b] < MaxD)printf("%d\n", map[a][b]);elseprintf("-1\n");}}return 0;
}
这篇关于poj 3615 Cow Hurdles的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!