poj2263 Heavy Cargo --- floyd求最大容量路

來源:互聯網
上載者:User

標籤:class   blog   code   2014   string   os   

求給定起點到終點的路徑中,最小邊權的最大值


#include <iostream>#include <cstring>#include <string>#include <cstdio>#include <cmath>#include <algorithm>#include <vector>#include <queue>#include <map>#define inf 0x3f3f3f3f#define ll __int64#define mod 1000000007using namespace std;char s1[35],s2[25],city[210][35];int mp[210][210],n,r;void floyd(){    for(int k=1;k<=n;k++)        for(int i=1;i<=n;i++)            for(int j=1;j<=n;j++)                mp[i][j]=max(mp[i][j],min(mp[i][k],mp[k][j]));}int main(){    int t,a,b,d,cnt,i,j;    t=1;    while(scanf("%d%d",&n,&r)&&(n||r))    {        cnt=1;        memset(mp,0,sizeof mp);        for(i=1;i<=r;i++)        {            scanf("%s%s %d",s1,s2,&d);            a=b=0;            for(j=1;j<cnt;j++)            {                if(strcmp(s1,city[j])==0)                    a=j;                if(strcmp(s2,city[j])==0)                    b=j;            }            if(!a)            {                strcpy(city[cnt],s1);                a=cnt;                cnt++;            }            if(!b)            {                strcpy(city[cnt],s2);                b=cnt;                cnt++;            }            mp[a][b]=mp[b][a]=d;        }        scanf("%s%s",s1,s2);        floyd();        for(j=1;j<=n;j++)        {            if(strcmp(s1,city[j])==0)                a=j;            if(strcmp(s2,city[j])==0)                b=j;        }        printf("Scenario #%d\n%d tons\n\n",t++,mp[a][b]);    }    return 0;}


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.