hdoj2066

hdoj 2066 一个人的旅行 【多源多汇最短路】 题目:hdoj 2066 一个人的旅行 方法:缩点 + 最短路 分析:看了大神的一篇博客,讲冗余压缩的,然后就想找一个多源最短路练练手。 这个题目就是典型的多源多汇最短路 方法:把所有的源点压缩成一个点,然后汇点压缩成一个点,然后跑最短路 注意: 1:求最短路的时候邻接表存储有重边不影响结果。 2:此题有重边。 3:要特殊处理源点和汇点是同一个点的情况。为0 阅读详情

一个人的旅行

                                                                              Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)


Problem Description
虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰富自己的阅历,还可以看美丽的风景……草儿想去很多地方,她想要去东京铁塔看夜景,去威尼斯看电影,去阳明山上看海芋,去纽约纯粹看雪景,去巴黎喝咖啡写信,去北京探望孟姜女……眼看寒假就快到了,这么一大段时间,可不能浪费啊,一定要给自己好好的放个假,可是也不能荒废了训练啊,所以草儿决定在要在最短的时间去一个自己想去的地方!因为草儿的家在一个小镇上,没有火车经过,所以她只能去邻近的城市坐火车(好可怜啊~)。
 

Input
输入数据有多组,每组的第一行是三个整数T,S和D,表示有T条路,和草儿家相邻的城市的有S个,草儿想去的地方有D个;
接着有T行,每行有三个整数a,b,time,表示a,b城市之间的车程是time小时;(1=<(a,b)<=1000;a,b 之间可能有多条路)
接着的第T+1行有S个数,表示和草儿家相连的城市;
接着的第T+2行有D个数,表示草儿想去地方。
 

Output
输出草儿能去某个喜欢的城市的最短时间。
 

Sample Input
  
6 2 3 1 3 5 1 4 7 2 8 12 3 8 4 4 9 12 9 10 2 1 2 8 9 10
 

Sample Output
  
9
 

Author
Grass
 

Source
 

Recommend
lcy
#include<stdio.h>

#define size 1001
#define inf 100000000

int t,s,d;

int max;

int a;
int b;
int c;

int map[size][size];
int city[size];
int destination[size];

int dist[size];
int visit[size];

int dijkstra(int v)
{
    int min;
    int dir;
    for(int i=0;i<=max;i++){
        visit[i]=0;
        dist[i]=map[v][i];
    }
    dist[v]=0;
    visit[v]=1;
    for(int i=0;i<=max;i++){
        min=inf;
        for(int j=0;j<=max;j++)
            if(min>dist[j]&&!visit[j]){
                min=dist[j];
                dir=j;
            }
        if(min==inf)
            break;
        visit[dir]=1;
        for(int j=0;j<=max;j++)
            if(dist[j]>dist[dir]+map[dir][j]&&!visit[j])
                dist[j]=dist[dir]+map[dir][j];
    }
    min=inf;
    for(int i=0;i<d;i++)
        if(min>dist[destination[i]])
            min=dist[destination[i]];
    return min;
}
int main(void)
{
    int min;
    while(scanf("%d%d%d",&t,&s,&d)!=EOF){
        for(int i=0;i<size;i++)
            for(int j=0;j<size;j++)
                map[i][j]=inf;
        max=0;
        for(int i=0;i<t;i++){
            scanf("%d%d%d",&a,&b,&c);
            if(map[a][b]>c)
                map[a][b]=map[b][a]=c;
            if(max<a)
                max=a;
            if(max<b)
                max=b;
        }
        for(int i=0;i<s;i++)
            scanf("%d",&city[i]);
        for(int i=0;i<d;i++)
            scanf("%d",&destination[i]);
        min=inf;
        for(int i=0;i<s;i++)
            if(min>dijkstra(city[i]))
                min=dijkstra(city[i]);
        printf("%d\n",min);
    }
    return 0;
}


hdoj2066最短路 c语言 最短路 是hdoj上的一个最短路问题,写的很牛 立即下载

相关推荐

七步设计高频变压器

七步设计高频变压器

m0_71394959的博客 5402

HDOJ -- 2066 一个人的旅行

一个人的旅行 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰富自己的阅历

ah_yeah 516

USRP N210与MATLAB连接实战:从驱动安装到信号接收

本文详细介绍了USRP N210与MATLAB连接的完整流程,涵盖驱动安装、网络配置、支持包安装及信号接收实战。重点解决了安装过程中的常见错误和硬件连接问题,并通过MATLAB代码示例展示了如何配置接收器、处理信号数据,帮助用户快速实现从设备对接到信号分析的全过程。

blue的专栏 821

HDOJ 题目2066一个人的旅行(最短路径,Floyd)

一个人的旅行 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 19207    Accepted Submission(s): 6722 Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然

Jogging_Clown 713

拆解大疆Osmo Pocket:聊聊微型云台里那几根比头发丝还细的线,以及它为啥一开机就‘摇头晃脑’

本文深入拆解大疆Osmo Pocket微型云台的精密硬件结构,揭秘其开机自检时‘摇头晃脑’的奥秘。通过分析无刷电机、霍尔传感器和46AWG同轴线等核心组件,展现了大疆在微型云台设计中的工程智慧与创新技术,特别是FOC控制和陀螺仪的应用,实现了0.1°级的姿态控制精度。

weixin_27869497的博客 670

AutoCAD 2024 Mac版安装激活教程:从下载到破解一站式解决方案

本文提供AutoCAD 2024 Mac版的详细安装与优化指南,包括系统要求检查、下载安装流程、常见问题解决方案及性能优化设置。特别介绍了如何应用最新补丁和Update保持软件性能,帮助用户顺利完成从安装到破解的全过程。

weixin_29239661的博客 846

hdoj-2066 一个人的旅行【最短路径--dijkstra&&spfa&&floyd】

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2066 解题思路: 把城市a,b看成起点和终点,time看成两者之间的距离      从而转化成最短路径问题 该题中有多个起点终点    求出每个起点到每个终点的最短路径   取在这些最短路径中的最小值 注意:本题没有给出城镇的个数n  但floyd中刻画第几个节点时会用到    所以需要自己去找

Just do it 809

【脑电分析系列】第15篇:脑电功能连接性与脑网络分析(二):Granger因果性、图论指标与复杂网络构建

摘要: 本文深入探讨了脑电(EEG)分析中的高阶连接性方法——有效连接(Effective Connectivity),重点介绍了Granger因果性(Granger Causality, GC)的原理与应用。GC通过统计预测揭示脑区间信息流动方向,超越了传统功能连接的同步性分析。文章还结合图论指标(如度、路径长度、聚类系数和模块化)量化脑网络的拓扑结构,并通过Python代码(MNE和NetworkX库)演示了从EEG数据构建、分析复杂脑网络的完整流程。该研究为理解大脑动态互动、认知任务信息流及神经系统疾

qq_32516809的博客 1567

hdoj 2066 一个人的旅行(dijkstra)多源点多

一个人的旅行 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 24764    Accepted Submissio

张小V 803

深入介绍 SAP OData CSRF Token 的一些技术细节

跨站请求伪造(Cross-Site Request Forgery,简称 CSRF)是一种网络攻击手段,它允许攻击者伪造用户的身份来执行未经授权的操作。为了防止 CSRF 攻击,常用的一种技术手段就是 CSRF Token.CSRF Token 是一种随机生成的防伪 Token,它由服务器颁发给客户端,并需要客户端在提交某些特定类型的请求时,将该 Token 添加到 HTTP 请求的头部字段去。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 643

推理篇第3节:TensorRT基础——Builder、Engine、ExecutionContext生命周期

TensorRT模型优化与推理流程摘要 TensorRT是NVIDIA的深度学习推理优化器,通过Builder、Engine和ExecutionContext三阶段实现高效推理。Builder负责编译模型,执行图优化和kernel选择;Engine是优化后的推理计划;ExecutionContext管理运行时执行。编译期进行重量级优化(如算子融合、kernel调优),运行时快速执行。TensorRT 10.x引入新API,推荐使用buildSerialized方法。构建流程包括创建Builder、网络定义、

PeterPan的博客 503

HDOJ 2066

无脑dijkstra, 转问题为单源再处理(稀疏图用邻接表才是最优处理方式) #include #include int dist[1001]; char k[1001]; int g[1001][1001]; int main() { int t, s, d; int a, b, time; int i; int c; int e; int next; int m

埋vizee的墓 1048

基于深度学习YOLOv11的布匹缺陷检测系统(Python+PySide6界面+训练代码)

YOLOv11模型训练:根据布匹缺陷数据集训练YOLOv11模型,以识别布匹中的各种缺陷,如裂纹、污渍、破损等。PySide6界面设计:设计一个图形用户界面,帮助用户上传布匹图像,并显示模型的检测结果。模型优化与精度提升:通过数据增强、超参数调优等手段提高模型的准确性。本文介绍了如何基于YOLOv11实现布匹缺陷检测系统,并通过PySide6构建了一个图形用户界面。该系统能够自动检测布匹中的各种缺陷,具有较高的效率和精度。

斌擎科技 529

HDOJ-2066 解题报告

HDOJ 2066 解题报告

dylan20307002的博客 312

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

hdoj-2066

一个人的旅行 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 32437    Accepted Submission(s): 11173 Problem Description 虽然草儿是个路痴(就是在杭电待了一

有梦的博客 672

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

hdoj2066在做一次

#include"iostream" using namespace std; const int vex=2000; const int maxl=999999; void dijkstra(int n,int v,int *dist,int c[][vex]) { int i,j; int s[vex]; for(i=1;i<=n;i++) { dist[i]=c[v][i];

不要挡住我的阳光 388

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

hdoj 2066一个人的旅行

这题最重要的就是设置一个超级原点,即他的城镇,然后连接超级原点到相邻的城市的距离为0 ,接下来就是套用模板了,哦,对了,要优化一下,不然貌似数据蛮大的, View Code 1 #include"stdio.h" 2 #include"math.h" 3 #include"string.h" 4 #define maxn 0x7ffffff 5 6 int map[1001...

155

hdu 2066 一个人的旅行

hdu  2066  一个人的旅行              题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2066 最短路 Dijstra 题目分析:求最短路,用dijstra就能做。此题中稍有拐弯的地方是,起止点都不唯一,找最短,应分别分析起止。起点不唯一(不符单源),可以将各起点存为数组,分别求解找最短,亦可构造单源,另设源点(比如设为0,

slicer的技术交流栈 723

HDOJ 2066 一个人的旅游

一个人的旅游,还是dijkstra,不过记得构造小草编号为0到邻接城市的边长度为0。 代码 #include using namespace std; const int INF=0x7fffffff; int dist[2005],map[2005][2005]; bool visit[2005]; int n; void init() { int i,j; for( i

Peanuts_D 1257

hdoj 2066 一个人的旅行 (最短路)

http://acm.hdu.edu.cn/showproblem.php?pid=2066 11页竟然有图论题。。。 一遍dijkstra就可以,可以把家看成0城市,与家相邻的城市和家的连边权都是0,跑一遍dijkstra比较一波即可。 比较烦人的是要注意这里没给城市数,城市的编号也不是连续的。。。 #include &amp;lt;iostream&amp;gt; #include &amp;lt;cstdi...

sdxtcqs的博客 281

ACM HDOJ 2066 (一个人的旅行)

题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=2066 思路 添加超级始点和超级终点,求超级始点到超级终点的最短路 程序一 dijkstra 算法 import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(S

陈青杨 1228

一个人的旅行 hdu 2066

/**************** * Author:fisty * Data:2014-10-19 * hdu 2066 * 最短路 ***************/ #include #include #include using namespace std; #define MAX_N 1111 #define INF 0x3f3f3f3f int T,S,D; int m

fisty 534
上一篇: hdoj1874
下一篇: hdoj2112
lulining
博客等级 码龄15年 8粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值