• poj 1125 Stockbroker Grapevine


    题意:给出一个有N个点的图,求每一个点到其他各点最长距离中的最小值。

    思路:读懂了题意,这题就是一个水到不能再水的题。就是一个flody,然后求出任意两点的最小距离。然后一个二重循环就行了。

    代码:

    View Code
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <iostream>
    #include <algorithm>
    #include <queue>
    #include <math.h>
    #define  N 105
    #define  INF 100000000
    using namespace std ;
    
    int map[N][N] ;
    int n ;
    
    int main()
    {
        int i , j , k , x , y , t ;
    
        while ( scanf ( "%d" , &n ) , n )
        {
            for ( i = 1 ; i <= n ; i++ )
                for ( j = 1 ; j <= n ; j++ )
                    map[i][j] = INF ;
    
            for ( i = 1 ; i <= n ; i++ )
            {
                scanf ( "%d" , &t );
                while ( t-- )
                {
                    scanf ( "%d%d" , &x , &y );
                    map[i][x] = y ;
                }
            }
    
            for ( k = 1 ; k <= n ; k++ )
                for ( i = 1 ; i <= n ; i++ )
                    for ( j = 1 ; j <= n ; j++ )
                        if( map[i][j] > map[i][k] + map[k][j] )
                            map[i][j] = map[i][k] + map[k][j] ;
    
            /*for ( i = 1 ; i <= n ; i++ )
                for ( j = 1 ; j <= n ; j++ )
                  printf ( "%d %d = %d\n" , i , j , map[i][j] );*/
                        
            int ans = INF ;
            int minx , pos ;
            for ( i = 1 ; i <= n ; i++ )
            {
                minx = -1 ;
                for ( j = 1 ; j <= n ; j++ )
                    if ( i != j && map[i][j] > minx )
                    minx = map[i][j] ;
                if ( minx < ans )
                {
                    ans = minx ;
                    pos = i ;
                }
            }
    
            if ( ans == INF )
                printf ( "disjoint\n" );
            else
                printf ( "%d %d\n" , pos , ans ) ;
        }
        return 0 ;
    }

    再次痛恨自己的英语水平,什么时候能够顺利的读下来题啊。

  • 相关阅读:
    arcgis10.2 sde配置
    创建只读账号oracle
    oracle 的tnsnames.ora,listener.ora
    gp工具的许可
    复制整个数据库
    显示二维表格的位置计算
    windows文件名格式的中文+数字混合字符串排序
    supergridcontrol记录,分页
    outlook-由于本机的限制,该操作已被取消。请与系统管理员联系。
    自定义单元格式
  • 原文地址:https://www.cnblogs.com/misty1/p/2726769.html
Copyright © 2020-2023  润新知