【第22期】观点:IT 行业加班,到底有没有价值?

Audiophobia

翻译 2015年11月18日 12:52:14

UVa 10048


这道题只需要在Floyd算法稍微改一下就行了,求出间接能到达一点的最大值,和

本身求出最小值就行了。

#include <stdio.h>
#define INF 100000005
const int maxn = 105;
int map[maxn][maxn], n, m;
void init ( )
{
    for ( int i = 0; i <= n; i ++ ) //初始化,只有起点终点一样时为0
        for ( int j = 0; j <= n; j ++ )
            map[i][j] = i == j ? 0 : INF;
}
inline int Max ( int a, int b )
{
    return a > b ? a : b;
}
inline int Min ( int a, int b )
{
    return a < b ? a : b;
}
void floyd ( )
{
    for ( int k = 1; k <= n; k ++ )
        for ( int i = 1; i <= n; i ++ )
            for ( int j = 1; j <= n; j ++ )
                map[i][j] = Min ( map[i][j], Max ( map[i][k], map[k][j] ) );
    //求间接路径的最大值 在求最小值
}
int main ( )
{
    int q, cas = 0, u, v, l;
    while ( ~ scanf ( "%d%d%d", &n, &m, &q ) && ( n || m || q ) )
    {
        init ( );
        while ( m -- )
        {
            scanf ( "%d%d%d", &u, &v, &l );
            if ( map[u][v] > l )    //有可能存在同一段都有值
                map[u][v] = map[v][u] = l;
        }
        if ( cas ++ )
            printf ( "\n" );
        printf ( "Case #%d\n", cas );
        floyd ( );
        while ( q -- )
        {
            scanf ( "%d%d", &u, &v );
            if ( map[u][v] >= INF ) //超过最大值证明没有最短路
                printf ( "no path\n" );
            else
                printf ( "%d\n", map[u][v] );
        }
    }
    return 0;
}


举报

相关文章推荐

UVA10048Audiophobia

印证了一句话:比赛比的是对于算法的理解深度。 这道题是Floyd算法的变形,然而我没有反应过来,说明理解不够深入,需要重新看看推导过程,加深理解!!!

UVA 10048 Audiophobia 最小生成树

//UVA 10048 - Audiophobia /* 题意:n个点,m条无向路,每条路有一个噪音指数,从两点间的路径中选一条路,使这条路的最大噪音指数最小 思路:排序+并查集 类似克鲁斯卡尔 */ #include&lt;iostream&gt; #include&lt...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

UVA 10048 Audiophobia 最小生成树

//UVA 10048 - Audiophobia /* 题意:n个点,m条无向路,每条路有一个噪音指数,从两点间的路径中选一条路,使这条路的最大噪音指数最小 思路:排序+并查集 类似克鲁斯卡尔 *...

最小生成树【完结】

第一题 hdu 1232 畅通工程 点击打开hdu 1232 <span style="font-size: 18

UVA10048 - Audiophobia(Floyd,最大值的最小化)

UVA10048 - Audiophobia(Floyd,最大值的最小化) UVA10048 - Audiophobia 题目大意:给定一无向图,每条边都有一个权值,现在给你起点和终点,要...

最小生成树【完结】

第一题 hdu 1232 畅通工程 点击打开hdu 1232 <span style="font-size: 18

uva_10048_Audiophobia(floyd)

题意:输入一个C个点S条边(C<=100,s<=1000)的无向带权图,边权表示该路径上的噪音值。当噪音太大时,耳膜可能会受到伤害,所以当你从某点去往另一个点时,总是希望经过的最大噪音值最小。输入一些...

UVA 10048 - Audiophobia

题目大意:给定一个无向图加权图,求给定的两点间可经过的路径的最大边权最小。 题目分析:这是Floyd算法的变形,设d[i][j]:表示从i到j所经过的最大权值的最小值 状态转移方程:d[i][j]=min{max{d[i][k],d[k][j]},d[i][j]},利用Floyd算法改 ...

UVA10048-Audiophobia-最短路

UVA10048-Audiophobia-最短路题面思路将最短路定义改为“一条途径边权值最大值最小的路径”,发现性质依然有传递性,依然满足最短路的结构 –》最短路,改条件数据这么小,用Floyd就好...

uva 10048 - Audiophobia

点击打开链接uva 10048 <span style="font-size: 18
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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