Audiophobia UVA - 10048(floyd变形)

传送门

题意:求两点之间的路径上的最大边权最小,输出这个边权。

题解:使用floyd算法,对于不同的点k,i->k和k->j的长度之和可以不同,最后还要取一个最小值才是i->j的最短路径,把推理中的“之和”与“取最小值”换成“取最大值”和“去最小值”就可以了。

附上代码:


#include

using namespace std;

const int maxn=1e3+50;
const int inf=0x3f3f3f3f;

int n,m,q;
int d[maxn][maxn];

int main()
{
    int casen=0;
    while(scanf("%d%d%d",&n,&m,&q)!=EOF&&n){
        for(int i=0;i

 

你可能感兴趣的:(最短路)