zoukankan      html  css  js  c++  java
  • POJ 1125 Stockbroker Grapevine(Floyd)

    ( ̄▽ ̄)"

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cstdlib>
    #include<vector>
    #include<stack>
    #include<map>
    using namespace std;
    
    const int INF=30;  //infÓÃ15£¬10e8¶¼wa£¬ÓÃ20£¬30²Åac
    const int MAXN=110;
    int lc[MAXN][MAXN];
    
    void floyd_output(int n)
    {
        for(int k=1;k<=n;k++)
            for(int i=1;i<=n;i++)
                for(int j=1;j<=n;j++)
                    lc[i][j]=min(lc[i][j],lc[i][k]+lc[k][j]);
    
        int maxn,minn=INF,st;
        for(int i=1;i<=n;i++)
        {
            maxn=0;
            for(int j=1;j<=n;j++)
            {
                if(i!=j&&maxn<lc[i][j])
                    maxn=lc[i][j];
        //求i……j最长路径,比如从i点到j点(i不等于j),取最长的时间,因为散播是从i点向其他各点同时开始进行的,具有共时性,故应求最长时间
            }
            if(minn>maxn)
            {
                minn=maxn;
                st=i;
            }
        }
        if(minn<INF)
            printf("%d %d
    ",st,minn);
        else printf("disjoint
    ");
    }
    
    int main()
    {
        int n;
        while(scanf("%d",&n)&&n)
        {
            memset(lc,INF,sizeof(lc));
            for(int u=1;u<=n;u++)
            {
                int cnt,v,t;
                scanf("%d",&cnt);
                while(cnt--)
                {
                    scanf("%d%d",&v,&t);
                    lc[u][v]=t;
                }
            }
            floyd_output(n);
        }
        return 0;
    }
  • 相关阅读:
    Linq To Sql 大全
    lambda表达式学习
    一步一步学Linq to sql系列文章
    MVC 学习
    Guava环境设置
    ANT简介
    Quartz特点
    XStream环境设置
    log4j配置
    类是什么?
  • 原文地址:https://www.cnblogs.com/atmacmer/p/5196904.html
Copyright © 2011-2022 走看看