一个人的旅行--hdu2066
一个人的旅行
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 24646 Accepted Submission(s): 8529
接着有T行,每行有三个整数a,b,time,表示a,b城市之间的车程是time小时;(1=<(a,b)<=1000;a,b 之间可能有多条路)
接着的第T+1行有S个数,表示和草儿家相连的城市;
接着的第T+2行有D个数,表示草儿想去地方。
#include<cstdio>
#include<cstring>
#include<algorithm>
#define MAX 0x3f3f3f3f
using namespace std;
int map[][],d;
int de[],start[],target[];//开始定的数组小了就wa了
int dijkstra(int b)//先写一个模板地杰斯特拉
{
int min,i,j,mark,used[];
for(i=;i<=;i++)
{
used[i]=;
de[i]=map[b][i];
}
used[b]=;
de[b]=;
for(i=;i<=;i++)
{
min=MAX;
mark=-;
for(j=;j<=;j++)
{
if(!used[j]&&de[j]<min)
{
min=de[j];
mark=j;
}
}
if(mark==-)
break;
used[mark]=;
for(j=;j<=;j++)
{
if(!used[j]&&(de[j]>de[mark]+map[mark][j]))
de[j]=de[mark]+map[mark][j];
}
}
int we[],t=;
for(i=;i<d;i++)
we[i]=de[target[i]];
sort(we,we+d);
return we[];//返回的是到各个目的地的最小时间
}
int main()
{
int t,s,i,j,a,b,c;
while(scanf("%d%d%d",&t,&s,&d)!=EOF)
{
memset(map,MAX,sizeof(map));
for(i=;i<t;i++)
{
scanf("%d%d%d",&a,&b,&c);
if(a!=b&&map[a][b]>c)
map[a][b]=map[b][a]=c;//去重!!!
}
for(i=;i<s;i++)
scanf("%d",&start[i]);
for(i=;i<d;i++)
scanf("%d",&target[i]);
int min=MAX;
for(i=;i<s;i++)
min=min>dijkstra(start[i])?dijkstra(start[i]):min;//找出以各个起点为起点最小的时间!
printf("%d\n",min);
}
return ;
}
一个人的旅行--hdu2066的更多相关文章
- ACM-最短路之中的一个个人的旅行——hdu2066
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/lx417147512/article/details/27235809 ************** ...
- A过的题目
1.TreeMap和TreeSet类:A - Language of FatMouse ZOJ1109B - For Fans of Statistics URAL 1613 C - Hardwood ...
- hdu2066一个人的旅行(dijkstra)
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
- HDU2066一个人的旅行/最短路问题
一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- HDU2066:一个人的旅行(Dijkstra)
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
- HDU2066 一个人的旅行 最短路基础
新手熟悉一下迪杰斯特拉... 一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 一个人的旅行(hdu2066)Dijkstra算法模版
一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- hdu2066一个人的旅行(floyd优化)
一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Subm ...
- HDU2066一个人的旅行---(多起点多终点最短路径)
http://acm.hdu.edu.cn/showproblem.php?pid=2066 一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memo ...
随机推荐
- Spark问题记录
Spark 多线程时的序列化问题 临时记录 Exception in thread "Thread-28" org.apache.spark.SparkException: Ta ...
- Keil的可重定位段
对于一个大的文件,为了便于管理,一个好的办法时把一个大文件分为若干个小文件,每个小文件包含一部分相关的功能,这样功能将显得很整洁,而且移植到其它工程的时候也很方便,把文件copy过去即可. 对于汇编, ...
- java属性文件读取,属性修改
/** * 属性文件读取 * @author bestmata * */ public class CommUtil { private static Logger logger=Logger.get ...
- move 表索引失效
SQL> select INDEX_NAME,status from user_indexes; INDEX_NAME STATUS ------------------------ ...
- 虚拟ip配置
虚 拟IP地址(VIP) 是一个不与特定计算机或一个计算机中的网络接口卡(NIC)相连的IP地址.数据包被发送到这个VIP地址,但是所有的数据还是经过真实的网络接口. VIPs大部分用于连接冗余:一个 ...
- BZOJ2393: Cirno的完美算数教室
2393: Cirno的完美算数教室 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 138 Solved: 83[Submit][Status] D ...
- [置顶] 使用struts拦截器+注解实现网络安全要求中的日志审计功能
J2EE项目中出于安全的角度考虑,用户行为审计日志功能必不可少,通过本demo可以实现如下功能: 1.项目中记录审计日志的方法. 2.struts拦截器的基本配置和使用方法. 3.struts拦截器中 ...
- 屏蔽掉返回键,menu键,Home键
public class LockActivity extends Activity{ private static final int FLAG_HOMEKEY_DISPATCHED = 0x800 ...
- struts1配置文件之input
<action path="/*Person" type="cn.itcast.PersonAction" scope="request&quo ...
- UVA 10400 Game Show Math (dfs + 记忆化搜索)
Problem H Game Show Math Input: standard input Output: standard output Time Limit: 15 seconds A game ...