HDU 最短路

Posted forwhat00

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 最短路相关的知识,希望对你有一定的参考价值。

 

#include<iostream>
#define INF 200000
using namespace std;
int max(int a,int b){return a>b?a:b;}
int min(int a,int b){return a<b?a:b;}
int map[1002][1002],N,M;
int findmap(int sta,int end){
    int t;
    if(sta>end){t=end;end=sta;sta=t;}
    return map[sta][end];
}
void setmap(int sta,int end,int val){
    int t;
    if(sta>end){t=end;end=sta;sta=t;}
    if(sta==end){map[sta][end]=0;return;}
    map[sta][end]=val;
}
int main(){
    int a,b,c;
    cin>>N>>M;
    while(N!=0){
        for(int yy=0;yy<=N+5;yy++){
            for(int xx=0;xx<=N+5;xx++){
                setmap(xx,yy,INF);
            }
        }
        for(int i=0;i<M;i++){
            cin>>a>>b>>c;
            setmap(a,b,c);
        }
        for(int mid=1;mid<=N;mid++){
            for(int sta=1;sta<=N;sta++){
                for(int end=1;end<=N;end++){
                    a=findmap(sta,end);
                    b=findmap(sta,mid)+findmap(mid,end);
                    setmap(sta,end,min(a,b));
                }
            }
        }
        
        cout<<map[1][N]<<endl;
        cin>>N>>M;
    }
    return 0;

}

http://acm.hdu.edu.cn/diy/contest_showproblem.php?pid=1001&cid=36602

以上是关于HDU 最短路的主要内容,如果未能解决你的问题,请参考以下文章

HDU 2544 最短路

A - 最短路 (HDU - 2544)

最短路(bellman)-hdu2066

HDU 2066 最短路floyd算法+优化

C - 最短路径问题 (HDU - 3790 )

HDU 5889最小割+最短路