HYSBZ - 2763 - 飞行路线 (最短路)

飞行路线 HYSBZ - 2763 Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次出行最少花费多少? 数据... 阅读详情

题意:在可选择k个边花费为0的情况下求最短路

思路:最短路dis数组增加一维表示使用免费的次数,判断最短路时,分两种情况,使用免费次数或不使用。

#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f;
const int maxn = 1e5 + 10;
struct Edge//邻接表
{
    int to,w,next;
}G[maxn];
int vis[maxn][12];
int dis[maxn][12];//第二维表示的使用免费机会的次数
int head[maxn];
int cnt,n,m,k,st,ed;
void init()
{
    memset(vis,0,sizeof vis);
    for(int i  = 0 ;i  <= n; i++)
    {
        for(int j = 0 ; j <= k; j++)
        {
            dis[i][j] = inf;
        }
        head[i] = -1;
    }
    cnt = 0;
}
void addEdge(int s,int e,int w)
{
    G[cnt].to = e;
    G[cnt].w = w;
    G[cnt].next = head[s];
    head[s] = cnt++;
}
void SPFA()
{
    dis[st][0] =  0;
    vis[st][0] = 1;
    queue<pair<int,int> > que;
    que.push(make_pair(st,0));
    while(!que.empty())
    {
        pair<int,int> t = que.front();
        que.pop();
        vis[t.first][t.second] = 0;
        for(int  i  = head[t.first];i != -1; i = G[i].next)
        {
            if(dis[t.first][t.second] +G[i].w < dis[G[i].to][t.second])//不使用免费机会的最短路
            {
                dis[G[i].to][t.second] = dis[t.first][t.second] +G[i].w;
                if(!vis[G[i].to][t.second])
                {
                   vis[G[i].to][t.second] = 1;
                   que.push(make_pair(G[i].to,t.second));
                }
            }
            if(dis[t.first][t.second] < dis[G[i].to][t.second+1]&&t.second < k)//使用免费机会的最短路
            {
                 dis[G[i].to][t.second+1] = dis[t.first][t.second];
                 if(!vis[G[i].to][t.second+1])
                 {
                     vis[G[i].to][t.second+1]  = 1;
                     que.push(make_pair(G[i].to,t.second+1));
                 }
            }
        }
    }
}
int main()
{
   ios::sync_with_stdio(0);
   while(cin>>n>>m>>k)
   {
       init();
       cin>>st>>ed;
       for(int i = 0;  i < m; i++)
       {
           int u,v,w;
           cin>>u>>v>>w;
           addEdge(u,v,w);
           addEdge(v,u,w);
       }
       SPFA();
       cout<<dis[ed][k]<<endl;
   }
    return 0;
}

 

深入浅出SSD:固态存储核心技术、原理与实战(文末赠书) 作为经典畅销书的升级版,本书在第1版的基础上新增了大量新知识(如闪存、UFS、测试、文件系统等),并改写或删减了许多过时或不适用的内容,总修改量超过60%。本书由SSD技术社区SSDFans的核心团队成员联合业界、高校SSD方面的专家共同完成,相对于第1版,内容更全面、更新,也更有深度。本书从产品、技术和应用3个维度展开,全面、详细讲解了SSD的发展历史、产品形态、工作原理、整体架构,以及各个功能模块的原理和使用,从SSD的前端接口协议到FTL算法,再到后端的闪存和纠错,以及测试,本书都有涉及。 阅读详情

相关推荐

相机标定-张正友棋盘格标定法

(X,Y,Z)为在世界坐标系下一点的物理坐标 ( u , v ) 为该点对应的在像素坐标系下的像素坐标 引入齐次坐标的原因:引入齐次坐标的目的是为了升维,将坐标从二维坐标变为三维坐标。 2.相机成像过程 相机成像系统中,共包含四个坐标系:世界坐标系、相机坐标系、图像坐标系、像素坐标系。 (1)世界坐标系(,,) 描述目标在真实世界中的位置引入的参考坐标系。 (2)相机坐标系(,,) ...

qq_41275123的博客 1万+

贝茜的飞行路线

题目:题目描述 奶牛贝茜想到一个更温暖的地方去度过这个寒冷的冬天。不幸的是,她发现只有一家名叫AB的航空公司愿意把票卖给奶牛,而且这些票的构成很奇怪。AB有N架飞机,每架都有一个特定飞行路线,这个飞行路线包含2个或更多的城市。例如,一架飞机的路线可能是从城市1开始,然后飞到城市6,再飞到城市2,最后飞到城市8。没有城市会在一条路线上出现多次。如果贝茜决定使用这个路线,她可以在一条路线的任意一个城市...

iwi 2658

2021年J题:基于STM32F103的周期信号波形识别与参数测量系统设计(立创EDA+SZPT_ZXL)

本文详细复盘了2021年全国大学生电子设计竞赛J题获奖项目,手把手教你如何基于STM32F103微控制器设计并实现周期信号波形识别与参数测量系统。文章深入剖析了硬件电路设计(包括程控放大、工作点抬升与滞回比较器)与核心软件算法(如动态采样、FFT频谱分析与波形识别逻辑),并分享了DMA传输、FFT库使用等实战要点与避坑指南,为嵌入式信号处理与电赛备赛提供了宝贵经验。

weixin_32673065的博客 228

HYSBZ 2763||P4568 飞行路线(dijkstra+分层图入门)

  题目链接:https://www.luogu.org/problemnew/show/P4568        典型的分层图的题,因为k的取值范围很小,所以我们需要另外再建立k层图,其实就是相当于跨层建边,主要就是这个过程怎么实现,剩下的就是一个裸的dij了。看到一份用二维数组存的代码,感觉要比我的代码写的简单,过两天敲一下试试,传送门 AC代码: #include &lt;bits...

Charles_Zaqdt的博客 447

Matlab信号处理

Matlab信号处理 需要安装的APP: Signal Analyzer app:提供一个可以在时域和频域可视化、测量、分析和比较信号的工具; Filter Builder和Filter Designer app:可以很方便通过下拉菜单和填写参数的方式来设计和分析数字滤波器; 对于小波分析,Matlab提供了: 1.Wavelet Signal Denoise app:利用离散小波变换对信号去噪; 2.Signal Multiresolution Analyzer app:对信号进行多分辨率的分析和可视化

Huichin_Min的博客 4399

Oracle PLM Agile936 单点登录配置方式

Oracle PLM Agile936 单点登录配置方式

Jay的个人博客 824

[JLOI2011]飞行路线

题目 BZOJ 2763: [JLOI2011]飞行路线 分析 图上DP。 应当注意,最小花费的航线并不一定是在最短路径上免费尽量多的边而得到的。 为什么呢?设想如果有一条路径,由不多于k条边组成,那么可以通过免费掉所有的边而获得0元的费用;如果恰好此图的最短路有多于k条边组成,那么无论如何也不能免费到0元。 因此,应采用DP:设f[i][j]表示更新到i节点,当前免费了j次的最小...

sd2207SUN的博客 552

ESP32-CAM 赋能 AI 视觉巡检小车:自主避障与目标追踪实现全解析

本文基于 ESP32-CAM 实现了低成本 AI 视觉巡检小车的核心功能,硬件成本<100 元,兼顾自主避障与目标追踪。算法升级:移植 YOLOv5nano 量化模型(INT8),提升目标检测精度(如识别巡检场景中的 “异常物体”“人员”);无线拓展:通过 MQTT 协议将巡检图像、距离数据上传到阿里云 / 腾讯云,实现远程监控;多传感器融合:增加温湿度(DHT11)、红外测温(MLX90614)模块,扩展巡检维度;路径规划:结合 SLAM 算法,实现自主建图与路径巡检。

weixin_42300449的博客 368

BZOJ 2763: [JLOI2011]飞行路线

Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次

jjs98 967

【示波器专题】示波器探头的原理深入——有源探头之单端有源探头

由于接地环路的苛刻要求,更高带宽的单端有源探头就算设计了也不实用。因此单端有源探头的带宽一般在6GHz以内,更高带宽的信号测量也只能使用差分有源探头(市面上有些型号的差分探头可同时兼顾单端测试)。......

一点硬件 2145

如何给K8S配置一个具有永久有效的kubeconfig

在 Amazon EKS 环境中,Kubernetes 的认证机制与 AWS IAM 深度集成,通过aws-iam-authenticator动态生成临时凭证。这种设计虽然增强了安全性,但给需要持久化凭证的工具链(如 CI/CD 系统中的 KubeVela)带来了挑战。具体表现为:临时凭证失效​​:默认 Token 有效期为 15 分钟至 1 小时;​​IAM 角色限制​​:直接使用aws eks get-token生成的凭证无法持久化

小杨同学的博客 660

HYSBZ - 2763 飞行路线(分层图最短路)

Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次出行最少花费多少? Inpu...

qq_17078131的博客 247

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

【HYSBZ - 2763 】飞行路线 (分层图最短路,最短路dp)

题干: Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次出行最少花费多少? ...

xuanweiace的博客 612

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

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

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Z - 飞行路线 HYSBZ - 2763 分层图最短路

Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次出行最少花费多少? Inpu...

lyslyslys的博客 263

数学建模模型总结

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

飞行路线 HYSBZ - 2763(分层图最短路)

飞行路线 HYSBZ - 2763 Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和...

codeswarrior的博客 386

HYSBZ - 2763 飞行路线 (分层图+spfa)

首先我们先来看一下什么叫做分层图:         分层图主要是应用于 变化的最短路问题 问题常表现为一个最短路问题上加一些手脚,如减小一些边权,改变一些连接,但事先又不知道,或可以自由选择改变哪个边,最终求最短路等等。由于无法知道改变了那些边,所以用到分层图思想。 可以理解为 平行宇宙 一样的东西 就是把原图复制出来k个,然后在原图连接的基础上,在相邻层中间加一些要求的变化边,通常是单向的(保...

柳予欣的三味书屋~ 442

HYSBZ 2763 飞行路线

Description Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次

Occult 518

bzoj 2763 飞行路线(分层图??)

bzoj2763 飞行路线思路:这题貌似是用分层图来做,但是我也不知道这图哪里分层了(汗)。 我是这么想的,首先,对于一条路线,我们有两种选择:1、正常通过,花费增加对应的边权。2、使用一次免费通过的机会,不增加花费。若我们贪心的来考虑的话,可能是找出一条最短路然后在最短路上对边权排序,优先对边权大的边使用免费通过(以上纯属口胡),但是这么做有问题。可能出现这种情况,存在一条s到t的路径,它的边的

frank的小黑屋 526

SDKD 2019 Spring Training Series C2 1st Round B 飞行路线 HYSBZ - 2763

题目链接:小题目 思路:类似于dp的思想称为分层图求最短路问题, 一般适用于要对图中的某些边的权进行变换的情况,变换的次数要很小才行。 d[u][j]表示到达u点已经免费乘坐了j次航线的最短距离。在套一个裸的迪杰斯特拉算法就可以了。 其实已经有这个思想了,但是想的还不是很清楚,写的也不好,最后没出来 #include&lt;bits/stdc++.h&gt; #define INF...

沐妖的博客 249

飞行路线 HYSBZ-分层思想.

飞行路线  HYSBZ - 2763  #include&lt;bits/stdc++.h&gt; using namespace std; #define maxn 10555 #define inf 0x3f3f3f3f int n,m,k,s,t,u,v,ans,w; int dis[maxn][12],vis[maxn][15]; struct node { in...

BePosit的博客 395

飞行路线 HYSBZ - 2763 (分层图+Dijkstra && Spfa)

飞行路线   Alice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次出行最少花...

weixin_30687811的博客 139

bzoj 2763 JLOI 2011 飞行路线 分层图+spfa

DescriptionAlice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这次出行最少花

A_loud_name 576

2018 ACM-ICPC南京网络赛 Magical Girl Haze(分层最短路)

2018 ACM-ICPC南京网络赛 Magical Girl Haze There are NN cities in the country, and MM directional roads from uu to v(1\le u, v\le n)v(1≤u,v≤n). Every road has a distance c_ici​. Haze is a Magical Girl that...

codeswarrior的博客 583

【数字_ID】CUC Spring最小生成树图论解

文章目录Rikka with Minimum Spanning Trees Gym - 102012ANetworking POJ - 1287最短路径·一 HihoCoder - 1081最短路径·二:Floyd算法 HihoCoder - 1089最短路径·三:SPFA算法 HihoCoder - 1093最小生成树一·Prim算法 HihoCoder - 1097最小生成树二·Kruscal...

IuMgXnWu 383

【BZOJ2763】飞行路线(最短路)

题面BZOJDescriptionAlice和Bob现在要乘飞机旅行,他们选择了一家相对便宜的航空公司。该航空公司一共在n个城市设有业务,设这些城市分别标记为0到n-1,一共有m种航线,每种航线连接两个城市,并且航线有一定的价格。Alice和Bob现在要从一个城市沿着航线到达另一个城市,途中可以进行转机。航空公司对他们这次旅行也推出优惠,他们可以免费在最多k种航线上搭乘飞机。那么Alice和Bob这

小蒟蒻yyb的博客 722
上一篇: ACM---差分
下一篇: HRBUST - 1818 - 石子合并问题--直线版 (区间dp)
Healer66
博客等级 码龄9年 331粉丝 267原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值