【HDU 3790】双权最短路
来源:互联网 发布:师洋的淘宝店叫什么 编辑:程序博客网 时间:2024/05/23 19:18
#include <iostream>using namespace std;#define MAX 1100#define INF 99999int map[MAX][MAX];int cost[MAX][MAX];int n,m;void init(){int i,j;for(i=1;i<=MAX;i++){for(j=1;j<=MAX;j++){if(i==j){map[i][j]=0;cost[i][j]=0;}else{map[i][j]=INF;cost[i][j]=INF;}}}}void dijkstra(int start,int end){int i,j;int next,minc;int dist[MAX],visit[MAX],value[MAX];memset(visit,0,sizeof(visit));for(i=1;i<=n;i++){dist[i]=map[start][i];value[i]=cost[start][i];}visit[start]=1;for(i=1;i<n;i++){minc=INF;for(j=1;j<=n;j++){if(!visit[j] && minc>dist[j]){minc=dist[j];next=j;}}visit[next]=1;for(j=1;j<=n;j++){if(!visit[j] && map[next][j]<INF){if(dist[j]>dist[next]+map[next][j]){dist[j]=dist[next]+map[next][j];value[j]=value[next]+cost[next][j];}else if(dist[j]==(dist[next]+map[next][j])){if(value[j]>value[next]+cost[next][j])value[j]=value[next]+cost[next][j];}}}}printf("%d %d\n",dist[end],value[end]);//cout<<dist[end]<<' '<<value[end]<<endl;}int main(){while(1){int start,end;init();int i;cin>>n>>m;if(n==0 || m==0)break;for(i=0;i<m;i++){int x,y;int time,cos;cin>>x>>y>>time>>cos;if(map[x][y]>time){map[x][y]=map[y][x]=time;cost[x][y]=cost[y][x]=cos;}else if(map[x][y]==time){if(cost[x][y]>cos)cost[x][y]=cost[y][x]=cos;}}cin>>start>>end;dijkstra(start,end);}return 0;}
对于这种题需要注意的就两点,特别重要的两点,初始化,和输入的设置(if语句),再就是Dijastra在更新时候的代码语句设置了。
这道题我在Virtual judge上做的,有一个很奇怪的情况。。。就是如果用cout,那就RE了,但用printf,就AC了(G++提交),然后如果用cin,cout组合,用C++提交,就WA了=,=
不懂是为什么=,=感觉好神奇
0 0
- 【HDU 3790】双权最短路
- HDU 3790 (最短路)
- HDU 3790 最短路
- hdu 3790 最短路
- hdu 3790 最短路
- HDU-3790 最短路 SPFA
- HDU-3790-最短路问题
- hdu 3790(最短路)
- HDU 3790 最短路 Dijkstra
- hdu 3790 最短路模板
- HDU 3790-最短路径问题(双权最短路)
- 最短路径问题 HDU 3790 双权最短路
- HDU 3790 最短路问题(最短路)
- hdu 3790 最短路spfa模板
- HDU 3790--最短路问题(Bellman_Ford)
- hdu 3790 (单源最短路dijkstra)
- HDU 3790--最短路问题(Dijkstra)
- 最短路 2544hdu
- 列出指定目录下的所有文件的绝对路径
- 构造函数
- 数据结构-----神奇工号
- 开篇
- PHP获取当前网页的地址及附带的参数等
- 【HDU 3790】双权最短路
- OCP 1Z0 052 80
- 字符串分割
- 递归列出指定目录下的所有文件名
- Android-SurfaceView与SurfaceHolder对象
- 随笔1
- C++转erlang后感想
- Perl入门(二)Perl的流程控制
- ZOJ 2656 (题目忘了)