HDU 2066 一个人的旅行(地杰斯特拉)
题目链接
在实训的间隙刷个题。。。裸地杰斯特拉。
1 #include <stdio.h> 2 #include <string.h> 3 #define N 10000000 4 int p[1001][1001]; 5 int main() 6 { 7 int i,j,k,t,s,d,sv,ev,w,min,num,min2,max; 8 int a[1001],o[1001],key[1001]; 9 int low[1001]; 10 while(scanf("%d%d%d",&t,&s,&d)!=EOF) 11 { 12 memset(key,0,sizeof(key)); 13 memset(low,0,sizeof(low)); 14 memset(o,0,sizeof(o)); 15 for(i = 1;i <= 1000;i ++) 16 { 17 for(j = 1;j <= 1000;j ++) 18 p[i][j] = N; 19 p[i][i] = 0; 20 } 21 max = 0; 22 for(i = 1;i <= t;i ++) 23 { 24 scanf("%d%d%d",&sv,&ev,&w); 25 if(p[sv][ev] > w) 26 { 27 p[sv][ev] = w; 28 p[ev][sv] = w; 29 } 30 if(max < sv) 31 max = sv; 32 if(max < ev) 33 max = ev; 34 } 35 for(i = 1;i <= s;i ++) 36 scanf("%d",&a[i]); 37 for(i = 1;i <= d;i ++) 38 { 39 scanf("%d",&j); 40 key[j] = 1; 41 } 42 min2 = N; 43 for(k = 1;k <= s;k ++) 44 { 45 memset(o,0,sizeof(o)); 46 for(i = 1;i <= max;i++) 47 low[i] = p[a[k]][i]; 48 o[a[k]] = 1; 49 for(i = 1;;i ++) 50 { 51 min = N; 52 for(j = 1;j <= max;j ++) 53 { 54 if(min > low[j]&&!o[j]) 55 { 56 min = low[j]; 57 num = j; 58 } 59 } 60 o[num] = 1; 61 if(min == N)break; 62 for(j = 1;j <= max;j ++) 63 { 64 if(low[j] > min +p[num][j]&&!o[j]) 65 low[j] = min + p[num][j]; 66 } 67 } 68 for(j = 1;j <= max;j ++) 69 { 70 if(key[j]) 71 { 72 if(min2 > low[j]) 73 min2 = low[j]; 74 } 75 } 76 } 77 printf("%d\n",min2); 78 } 79 return 0; 80 }
转载于:https://www.cnblogs.com/naix-x/archive/2012/07/02/2573605.html
HDU 2066 一个人的旅行(地杰斯特拉)相关推荐
- hdu 2066 一个人的旅行 (多源最短路 )
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
- 【ICPC-292】hdu 2066 一个人的旅行
点击打开链接hdu 2066 思路:最短路+Dijkstra 分析:题目给定的起点有s个,终点有d个.要求找到从起点到这些终点最短的路径.很显然只要枚举起点然后比较最后得到最小的值. 代码: #inc ...
- HDOJ 2066 HDU 2066 一个人的旅行 ACM 2066 IN HDU
MiYu原创, 转帖请注明 : 转载自 ______________白白の屋 题目地址: http://acm.hdu.edu.cn/showproblem.php?pid=2066 ...
- hdu 2066 一个人的旅行(最短路)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2066 Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里 ...
- HDU 2066 一个人的旅行
http://acm.hdu.edu.cn/showproblem.php?pid=2066 题意: 输入数据有多组,每组的第一行是三个整数T,S和D,表示有T条路,和草儿家相邻的城市的有S个,草儿想 ...
- 题解报告:hdu 2066 一个人的旅行
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
- HDU - 2066 一个人的旅行 (floyd/dijkstra)
虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰富自己的阅历,还可以看美丽的风景--草儿 ...
- HDU - 2066 一个人的旅行(Dijkstra)
虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰富自己的阅历,还可以看美丽的风景--草儿 ...
- HDU 2066 一个人的旅行(单源最短路SPFA)
Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰富自己的阅历,还 ...
最新文章
- python语言编程基础-Python语言入门详解!快速学成Python!
- 在日期格式化的时候提示错误:Tostring没有采用一个参数的重载
- 《面向对象分析与设计》一3.2 参与者
- 【设计模式】【行为型模式】模板模式
- linux网络编程 华清,Linux网络编程之套接字
- Fedora Linux中配置JDK5或JDK6环境变量
- Android 教你打造炫酷的ViewPagerIndicator
- Nginx资源合并优化模块nginx-http-concat
- ubuntu 设置静态路由_Linux route 配置静态路由(转载)
- 学习帮——提高智商、改善记忆力的120种绝佳方法!
- 2021-CSP-J2/S2 自我题解
- opencv的学习与人脸情绪识别项目(一)
- 申报2021国家高新技术企业认定,有哪些标准?
- 35 漂亮的单页网页设计
- Altium_Designer中英文技术词汇对照
- pythonsklearn做手写识别_Python scikit-learn 学习笔记—手写数字识别
- Android电量统计
- 2022年登高架设操作证考试题及在线模拟考试
- 【Flutter】四十一、Flutter解决沉浸式状态栏——SafeArea
- android隐藏系统ui_如何启用Android的“系统UI调谐器”以访问实验功能
热门文章
- 【持久化框架】SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载
- OSChina 周六乱弹 ——世上无难事,只要肯放弃!
- ioctl 函数 参数 详解
- python 面试题(3)--- 进制转换
- Vue中computed分析
- 您第一次上网的速度是多少?
- oxp开放型可变长协议_培养开放型领导者
- 管理者和领导者的区别_如何赢得领导者的尊重
- SecureDrop 0.3,LibreOffice Online和更多新闻
- 物联网linux_Linux的未来,Google的物联网标准等