最短路

来源:互联网 发布:mac怎么设置用户名 编辑:程序博客网 时间:2024/06/05 10:19
  1. dijkstra
int mm[1005][1005];LL dis[1005];bool vis[1005];void dijkstra(int s,int n){    memset(vis,0,sizeof vis);    for(int i=0;i<=n;++i)        dis[i]=mm[i];    dis[s]=0;    vis[s]=true;    for(int i=1;i<=n;++i)    {        int mark=-1,mindis=INF;        for(int j=1;j<=n;++j)        {            if(!vis[j]&&mindis>dis[j])            {                mark=j;                mindis=dis[j];            }        }        if(mark==-1)            break;        vis[mark]=true;        for(int j=1;j<=n;++j)            if(!vis[j])                dis[j]=dis[j]>dis[mark]+mm[mark][j]?dis[mark]+mm[mark][j]:dis[j];    }}

题目:hdu畅通工程续
2.

0 0