hdu1874 畅通工程续
2012-08-02 12:30
190 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874
/* Dijkstra 学习中 模版留存*/ #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; #define M 5000000 int map[500][500],d[10000],vis[10000],n,mm; void dij(int start) { int i,x,y; memset(vis,0,sizeof(vis)); for(i=0;i<n;i++) d[i]=(i==start?0:M); for(i=0;i<n;i++) { int m=M; for(y=0;y<n;y++) if(!vis[y]&&d[y]<=m) { m=d[y];x=y; } vis[x]=1; for(y=0;y<n;y++) { int temp=d[x]+map[x][y]; if(d[y]>temp) d[y]=temp; } } } int main() { while(scanf("%d%d",&n,&mm)!=EOF) { int i,j,a,b,x,s,e; for(i=0;i<n;i++) for(j=0;j<n;j++) map[i][j]=M; while(mm--) { scanf("%d%d%d",&a,&b,&x); if(map[a][b]>x) { map[a][b]=x; map[b][a]=x; } } scanf("%d%d",&s,&e); dij(s); printf("%d\n",d[e]==M?-1:d[e]); } return 0; }
相关文章推荐
- hdu1874 畅通工程续
- HDU1874---畅通工程续(dijkstra&&SPFA)
- HDU1874 畅通工程续【Dijkstra算法】
- hdu1874 畅通工程续---dij
- hdu1874 畅通工程续 单源最短路径 模板题
- HDU1874 畅通工程续 解题报告--最短路dijkstra算法
- hdu1874 畅通工程续 Bellman-Ford算法SPFA 算法
- hdu1874 畅通工程续
- hdu1874 畅通工程续(Dijkstra)
- hdu1874畅通工程续 --hdu2544最短路(Floyd)
- hdu1874 畅通工程续
- HDU1874 畅通工程续
- hdu1874(畅通工程续)
- hdu1874-畅通工程续
- HDU1874 畅通工程续【Dijkstra】
- hdu1874 畅通工程续 floyd入门题学习
- hdu1874-畅通工程续(最短路)
- hdu1874 最短路径 畅通工程续
- hdu1874 畅通工程续(Dijkstra算法,单源最短路)
- HDU1874 畅通工程续