hdoj(3790) 最短路径
最短路径问题
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 13577 Accepted Submission(s): 4156
(1<n<=1000, 0<m<100000, s != t)
#include <stdio.h>
#include <string.h>
#define maxnum 1005
#define maxint 999999
int dist[maxnum],hua[maxnum],c[maxnum][maxnum],d[maxnum][maxnum];
int n;
void dijkstra(int x,int y)
{
int i,j;
bool v[maxnum]={0};
memset(dist,maxint,sizeof(dist));
memset(hua,maxint,sizeof(hua));
v[x]=1;
dist[x]=0;
hua[x]=0;
for(i=1;i<=n;i++)
{
int u=x;
int min=maxint;
for(j=1;j<=n;j++)
{
if(dist[j]<min&&!v[j])
{
min=dist[j];
u=j;
}
}
v[u]=1;
for(j=1;j<=n;j++)
{
if(!v[j]&&dist[j]>dist[u]+c[u][j])
{
dist[j]=dist[u]+c[u][j];
hua[j]=hua[u]+d[u][j];
}
if(!v[j]&&dist[j]==dist[u]+c[u][j]&&hua[j]>hua[u]+d[u][j])
{
hua[j]=hua[u]+d[u][j];
}
}
}
}
int main()
{
int m,x,y,p,q,k,a,b;
while(scanf("%d%d",&n,&m)&&(n&&m))
{
int i,j;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
c[i][j]=maxint;
d[i][j]=maxint;
}
}
for(i=1;i<=m;i++)
{
scanf("%d%d%d%d",&x,&y,&p,&q);
if(p<c[x][y])
{
c[x][y]=p;
c[y][x]=p;
d[x][y]=q;
d[y][x]=q;
}
if(p==c[x][y]&&q<d[x][y])
{
d[x][y]=q;
d[y][x]=q;
}
}
scanf("%d%d",&a,&b);
dijkstra(a,b);
printf("%d %d\n",dist[b],hua[b]);
}
return 0;
}
hdoj(3790) 最短路径的更多相关文章
- hdoj 3790 最短路径问题
最短路径问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- ACM: HDU 3790 最短路径问题-Dijkstra算法
HDU 3790 最短路径问题 Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Des ...
- HDU - 3790 最短路径问题 (dijkstra算法)
HDU - 3790 最短路径问题 Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费 ...
- HDOJ 3790
dijstra最短路径算法 : 9885560 2013-12-23 23:54:56 Accepted 3790 203MS 8112K 1343 B C++ 泽泽 #include<cstd ...
- POJ 3790 最短路径问题(Dijkstra变形——最短路径双重最小权值)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3790 Problem Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你 ...
- HDU ACM 3790 最短路径问题
最短路径问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- HDU 3790最短路径问题 [最短路最小花费]
题目链接:[http://acm.hdu.edu.cn/showproblem.php?pid=3790] 最短路径问题 Time Limit: 2000/1000 MS (Java/Others) ...
- hdu 3790 最短路径问题(双重权值,dijkstra算法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3790 题目大意:题意明了,输出最短路径及其花费. 需要注意的几点:(1)当最短路径相同时,输出最小花费 ...
- hdu 3790 最短路径问题(两个限制条件的最短路)
http://acm.hdu.edu.cn/showproblem.php?pid=3790 有两个条件:距离和花费.首先要求距离最短,距离相等的条件下花费最小. dijkstra,仅仅是在推断条件时 ...
随机推荐
- Hibernate不同数据库 方言|驱动|url 配置
Hibernate不同数据库方言|驱动|url mySql: hibernate.dialect : org.hibernate.dialect.MySQLDialect driverClassNam ...
- [洛谷U871]building
题目来源:http://www.luogu.org/problem/show?pid=U871# [题目背景 Background] WOW是BLIZZARD公司开发的一款网络游戏,游戏的背景是处在一 ...
- pow(x,n) leecode
https://oj.leetcode.com/problems/powx-n/ 提交地址 快速幂的使用,可以研究一下 public class Solution { public double po ...
- mao/reduce实现求平均值
import java.io.*; import java.util.*; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io. ...
- usaco 打扫食槽
Description 从前奶牛是不挑食的,但现在世道变了,她们变得非常挑剔.牧场里有N头奶牛,约翰 要向她们提供M种食物,第i头奶牛只会吃Pi号食物. 约翰每天都要打扫食槽,这件事非常累.奶牛沿着食 ...
- usaco 奶牛集会 && 奶牛抗议
奶牛集会 Description 约翰家的N头奶牛每年都会参加“哞哞大会” .哞哞大会是世界奶牛界的盛事.集会上 的活动很多,比如堆干草,跨栅栏,摸牛仔的屁股等等.当然,哞哞大叫肯定也包括在内. 奶牛 ...
- Notepad++强大的代码补全和代码提示功能的方法
最近写项目,经常要打开一些文件去修改一些代码段.那么我的项目都是使用ied大型编辑器去写的,每次修改文件,哪怕是一个标点都要用一分钟时间去打开软件.当然,后来我也考虑到使用记事本,但总感觉不是很爽. ...
- [置顶] 第二届微软CRM交流年会
第二届微软CRM交流会将在12月14日举行,亲们要是感兴趣可以查看下面的活动详情.Jeff也是第一次参加这类活动,作为本次活动的嘉宾我为大家带来一个挺有意思的分享主题<Dynamics CRM ...
- IntelliJ IDEA 配置Jetty
jetty是google app engine 在大量使用的一款服务器软件,不过当然目前还撼动不了tomcat的地位,但是jetty相当轻量级,可以自己灵活定制 资源占用少 ,所以还是有吸引力的,接下 ...
- tcpreplay安装使用经验
tcpreplay安装使用经验 #Author: ypguo#Data: 2010.4.23#Version: 1.2 增加了修改VLAN tag内容. 1.1 ...