HDU6705 CCPC网络赛 path

车载毫米波雷达实战:用MATLAB复现DDMA-MIMO雷达的Empty-band算法(附代码解析) 本文详细介绍了车载毫米波雷达中DDMA-MIMO技术的实战应用,重点解析了Empty-band算法的原理与MATLAB实现。通过搭建仿真环境,文章深入探讨了发射天线通道解调与相位法速度解模糊两大核心难题的解决方案,并提供了完整的代码解析,为雷达算法工程师提供了从理论到实践的清晰指南。 阅读详情

题目链接
题解:
直接优先队列 bfs 将每条出边都压入队列会因为边数太多而 MLE,所以考虑一下减少放入队列的边。会发现每次只用压入两条边进队列。
首先将每个点边权最小的出边加入优先队列,然后 bfs 时每 pop 出一条边就将出点是这条边的点的下一条出边压入队列,同时将连接这条边的最短的边也压入队列进行 bfs 即可。
具体的优先队列中维护四个值:这条边作为出边的编号、这条边作为出边的点的编号、这条边到达的点的编号、目前为止的距离。
代码:

#include <bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef unsigned long long ull;
#define PI acos(-1.0)
#define INF 0x3f3f3f3f3f3f3f3f
#define P pair<ll, int>
#define debug(x) cout << (#x) << ": " << (x) << " "
#define fastio ios::sync_with_stdio(false), cin.tie(0)
const int mod = 1e9 + 7;
const int M = 15 + 10;
const int N = 50000 + 10;

int t, n, m, q;
struct node {
    int id, now, to, dis;
    bool operator < (const node &cmp) const {
        return dis > cmp.dis;
    }
} ;
priority_queue<node> que;
vector<P> G[N];
int mxk, k[N], ans[N];

void bfs()
{
    int cnt = 0;
    while(que.size()) {
        node tp = que.top(), temp;
        que.pop();
        ans[++cnt] = tp.dis;
        if(cnt >= mxk) break;
        if(tp.id + 1 < G[tp.now].size()) {
            temp.dis = tp.dis - G[tp.now][tp.id].first + G[tp.now][tp.id + 1].first;
            temp.id = tp.id + 1;
            temp.now = tp.now;
            temp.to = G[tp.now][tp.id + 1].second;
            que.push(temp);
        }
        if(G[tp.to].size()) {
            temp.dis = tp.dis + G[tp.to][0].first;
            temp.id = 0;
            temp.now = tp.to;
            temp.to = G[tp.to][0].second;
            que.push(temp);
        }
    }
}

signed main()
{
    scanf("%d", &t);
    while(t --) {
        while(que.size()) que.pop();
        scanf("%d %d %d", &n, &m, &q);
        for(int i = 1; i <= n; i ++) G[i].clear();
        for(int i = 1; i <= m; i ++) {
            int u, v, w;
            scanf("%d %d %d", &u, &v, &w);
            G[u].push_back({w, v});
        }


        for(int i = 1; i <= n; i ++) {
            if(G[i].size()) {
                sort(G[i].begin(), G[i].end());
                que.push({0, i, G[i][0].second, G[i][0].first});
            }
        }

        mxk = 0;
        for(int i = 1; i <= q; i ++) {
            scanf("%d", &k[i]);
            mxk = max(mxk, k[i]);
        }

        bfs();

        for(int i = 1; i <= q; i ++) {
            printf("%d\n", ans[k[i]]);
        }
    }
    return 0;
}

/*

  Rejoicing in hope, patient in tribulation.

*/

/*

             ,----------------,              ,---------,
        ,-----------------------,          ,"        ,"|
      ,"                      ,"|        ,"        ,"  |
     +-----------------------+  |      ,"        ,"    |
     |  .-----------------.  |  |     +---------+      |
     |  |                 |  |  |     | -==----`|      |
     |  |                 |  |  |     |         |      |
     |  |    Accepted _   |  |  |/----|`---=    |      |
     |  |                 |  |  |   ,/|==== OOO |      ;
     |  |                 |  |  |  // |(((( [33]|    ,"
     |  `-----------------`  |," .//| |((((     |  ,"
     +-----------------------+  //  | |         |,"
        /_)______________(_/  //`   | +---------+
   ___________________________/___  `,
  /  oooooooooooooooo  .o.  oooo /,   \,"-----------
 / ==ooooooooooooooo==.o.  ooo= //   ,`\--{)B     ,"
/_==__==========__==_ooo__ooo=_/`   /___________,"

*/

C#里使用NModbus来创建一个TCP从站服务 摘要:本文介绍了一个用C#实现的Modbus TCP从站服务器,基于.NET Framework 4.6.1开发。代码使用NModbus库创建TcpListener和ModbusSlaveNetwork,支持设置IP地址、端口号和从站ID。服务器实现了数据存储初始化功能(包括线圈和保持寄存器),并提供了启动/停止操作的UI界面和日志记录功能。该解决方案适用于需要调试Modbus TCP协议的场景,特别适合无法升级到更高版本.NET Framework的环境。 阅读详情

相关推荐

ORACLE 12C RAC 启动报错,错误代码 ORA-27300,ORA-27301,ORA-27302

非一体机,12.2 无任何补丁,2套X86服务器,1节点集群异常(数据库正常,还有会话),2节点正常工作,负载不高,硬件、空间均未检查到异常,多路径存在掉线的情况,但通过Mulitpath -ll 看又是正常的,2根私有网络,其中一根不同,sysctl中配置的稀疏模式。5、再次加成crs alert ohas等集群日志,以及根据现象和错误再次到后台sr中查找可用信息,发现有一个类似问题,12.2 RAC 无任何补丁,报同样错误,解决方案为重启两套服务器。查询MOS文档以及后台文档,排除上面指出的问题。

weixin_42344665的博客 1464

hdu-6705 path (全图第k短路 优先队列)

hdu-6705 path 题意:给你有向图,求第k短路的路径的长度(所有路径不限制使用次数) 思路:从多校群里搞到的。 #include <cstdio> #include <queue> #include <cstring> #include <iostream> #include <algorithm> #include &...

Kuguotao的博客 704

使用ChIPSeeker进行ChIP-seq, ATAC-seq,cut&tag等富集峰的基因组注释

常规的下一代高通量测序(next generation sequencing, NGS)实验通常产生大量短片段(reads),通常我们需要将这些reads比对到参考基因组/转录组上,即将它们置于生物学上有意义的基因背景下,才能获得有意义的结果。一般我们认为会产生两种类型的数据(当然两者并无严格意义上的区分)

微生信 3318

HDU 6705 path 优先队列

D - path 图论中使用优先队列的有趣题目,求一张图中第k短的路径。 注意区别于“第k短路”,因为“第k短路”问题是两个定点之间的第k短,而本题没有定点。 注意到第k短的路径最多只有k条边。 做法:优先队列维护路径的终点、长度、终点的上一个点、终点的上一个点到终点这条边在邻接表中的编号,优先级按长度升序。预处理要将邻接表中存的边都按照权值升序排序。首先将所有简单的边作为路径放进优先队列,此...

caiyiwen's ACM/ICPC Zone 264

VSAN数据救援实战:当26个虚拟机突然不可访问时我们做了什么?

本文深度复盘了一次由运维操作失误引发的VMware vSAN存储危机,导致26个虚拟机数据不可访问的实战救援过程。文章详细剖析了vSAN脑裂状态的诊断方法,分享了在官方支持受限时,如何结合社区智慧与自主分析,通过精准的底层命令干预和状态推理,最终成功恢复全部数据的破局思路与操作细节,为vSAN数据救援提供了宝贵经验。

weixin_35749786的博客 237

二叉树的操作之统计二叉树中节点的个数

一,问题描述 给定一颗二叉树,已知其根结点。 ①计算二叉树所有结点的个数 ②计算二叉树中叶子结点的个数 ③计算二叉树中满节点(度为2)的个数   二,算法分析 找出各个问题的基准条件,然后采用递归的方式实现。 ①计算二叉树所有结点的个数 1)当树为空时,结点个数为0,否则为根节点个数 加上 根的左子树中节点个数 再加上 根的右子树中节点的个数 借助遍历二叉树的思路,每访问一个结...

weixin_34200628的博客 4568

hdu 6705 path

题意:找第k短的路径 思路:优先队列bfs(启发式搜索) #include <bits/stdc++.h> #define fi first #define se second using namespace std; typedef long long LL; typedef int lint; const int maxk = 50005; const int maxn = ...

ehdhg13455的博客 771

Proteus一体化安装STC15库添加

Proteus一体化安装与STC15库添加指南 本文详细介绍了Proteus 8.9 SP2专业版的一体化安装流程和STC15系列单片机库文件的添加方法。安装过程简单快捷,无需破解,稳定性好。通过将两个库文件(Lib和LIB)复制到Proteus安装目录的DATA/LIBRARY文件夹中,即可实现STC15W4K32S4芯片的仿真功能。文中还提供了新建工程和器件放置的步骤说明,特别指出STC15W4K32S4芯片可兼容仿真其他STC15系列芯片,并附带下载链接获取资源。该教程适用于电子设计初学者和开发者。

#法外狂徒张三的博客 4万+

HDU - 6705 path (K短路+剪枝)

进入报名链接)~ path Time Limit: 2000/2000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1404Accepted Submission(s): 298 Problem Descripti...

柳予欣的三味书屋~ 429

智能音箱开发者必看:CEVA-BX vs Cadence HiFi音频DSP实战选型指南(附功耗对比表)

本文深入对比了CEVA-BX和Cadence HiFi两大音频DSP架构在智能音箱开发中的性能差异,涵盖语音唤醒、多麦克风阵列处理等核心场景。通过实测数据和功耗对比表,为开发者提供选型参考,帮助优化产品性能和能效表现。

weixin_29309213的博客 227

osg中显示3dtiles和cesiumIon

如下图为CesiumTilesetNode数据更新相关代码,将OSG对应的ViewMatrix、ProjectionMatrix和窗口信息传递给tileset->updateView()实现Cesium-native的场景更新。整体结构,其中 CesiumTilesetNode依赖Cesium3DTilesSelection::Tileset,实现数据的更新以及确定需要绘制的节点。1.1 CesiumNative3DTileslayer图层。

CPWWHSU的博客 889

Hdu 5719 Arrange

简单的加加减减去强行写一个树状数组也是没谁了…已经有官方题解了窝就贴一个代码嗯#include<cstdio> #include<cstring> #include<algorithm> using namespace std; #define LL long longconst int maxn = 112345; const int mod = 998244353;int arr[maxn];i

lambda QAQ 313

使用 Python 爬取 YouTube 视频评论(弹幕)

✅ 如何使用 Python 调用 YouTube Data API v3。✅ 如何爬取指定视频的所有评论信息。✅ 如何对评论数据进行初步分析与可视化。✅ 如何扩展功能,实现评论回复获取和多视频批量爬取。

2201_76125261的博客 643

hdu6705 path 2019ccpc网络赛

传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6705 大概是这题的加强版,https://blog.youkuaiyun.com/liufengwei1/article/details/97191896 就用node{u,v,id,l} 表示一条从u到v的长度为 l 的路径,编号为id(没加这个id之前因为插入set失败导致RE3发。 然后我们只需要枚举从...

binarycopycode 270

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

visio安装包

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

HDU 6705 path 2019ccpc网络赛

path Time Limit: 2000/1500 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 921Accepted Submission(s): 192 Problem Description You have a directed weighted g...

pxlsdz的博客 412

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

2019ccpc网络赛 path HDU - 6705 (贪心+第k短路)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6705 题意:给你一个有向图,让你求出所有的路径中第k短的 官方题解: 先把每条边以(u,v,w) 形式放进堆,堆按路径权值从小到大排序,然后每次取出堆顶,用v的出边扩展 新的路径。但是一个点的出度可能会非常大(如菊花图),可以发现,将出边排序之后,每次只需要扩 展当前点最小的出边,和扩展到当前点...

zx93的博客 455

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

2019CCPC网络赛 HDU6705 - path(图论,优先队列)

题目 https://vjudge.net/contest/325065#problem/D #include<cstring> #include<queue> #include<cstdio> #include<iostream> #include<algorithm> #include<vector> #inclu...

qq_43645188的博客 265

hdu6705 path 【优先队列】【贪心】【2019CCPC网络赛】

题意 给你n个点的有向图,有m条边, q次查询,每次查询第k大的路径的长度 思路 对于每个点所出去的边先排个序,预处理一下,我没可以知道最开始最短的边肯定只有一条,所以我们把每个点出去的最短的边先放到优先队列里面, 然后最短的边肯定就是当前最短的路径,那要如何扩展路径了,我们每次求出当前最短的路径那么放到队列里的肯定是由这条路径扩展出来的,因为其他路径暂时不用扩,因为有更短的在队列里面,但我们放出...

OOOak 303

2019CCPC网络赛 HDU6705 - path K短路

题意:给出n个点m条边的有向图,问图上第K短路的长度是多少(这里的路可以经过任何重复点重复边)。 解法:解法参考https://blog.youkuaiyun.com/Ratina/article/details/100066384这位大佬的。 比赛的时候也能想到用类似Dijkstra的做法用优先队列一条一条路拓展出来但是这样会MLE也没想到解决办法。后来看了题解才学会这个比较巧妙的优化办法。 ...

weixin_30508241的博客 199

2019ccpc网络赛 HDU - 6705 path 贪心跑第k小的路径长度

题目链接:https://vjudge.net/problem/HDU-6705 题解:建立源点 汇点 跑A*,到最后也一直超内存也真是菜到家了,A*时间空间怎么也得n^2,这个题原来是个贪心。。。。 官方题解: 先把每条边以 形式放进堆,堆按路径权值从小到大排序,然后每次取出堆顶,用v的出边扩展 新的路径。但是一个点的出度可能会非常大(如菊花图),可以发现,将出边排序之后,每次只需要扩 展...

还我笑颜 351

HDU-6705 path(2019CCPC网络赛1004) Kth路径 思维+套路题

HDU-6705 path(2019 CCPC网络赛1004) You have a directed weighted graph with n vertexes and m edges. The value of a path is the sum of the weight of the edges you passed. Note that you can pass any edge an...

weixin_43179892的博客 363

2019CCPC网络赛

hdu6703 array 题意 给定一个1到\(n\)的全排列,两种操作,将\(a_{pos}\)修改为\(a_{pos}+1000000\),询问第一个大于等于\(k\)的且不在\(a_1...a_r\)的数。 分析 由于\(k<=n\),因此操作二询问的答案最大是\(n+1\),因此操作一就相当于删去一个数。 考虑用权值线段树维护下标(权值区间下标最大值),操作一就将下标置...

awrd28452的博客 233

2019CCPC网络赛:1004 path

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6705 题目截图: 解题方法:很容易就能想到使用优先队列来求第k小的路径,那么还有一个问题就是是不是当前节点的所有的儿子都要加到优先队列里面?当然不是这样的,因为这样内存会超限而且也会TLE。我们可以想到当前状态要走接下来小的路径有几种情况?有一种情况就是走儿子的边权值最小的那一条。还有一种情况...

weixin_44911598的博客 75

2019CCPC网络赛 杭电 6705 path(题解+代码)

2019CCPC网络赛 杭电 6705 path(题解+代码)

Lesords 309

2019CCPC网络赛 - D. path

题意: 给定一张有 n 个点、m 条边的有向带权图,给 q 次询问,每次询问在图上的第 k 短路径的长度,点和边可反复经过。(n, m, q, k <= 5e4) 链接: https://cn.vjudge.net/problem/HDU-6705 题解: 考虑离线处理,求出最短到第 max{ki} 短的路径长度。维护一个小顶堆,初始化放入每个点的最短出弧,第 k 次取出得到第 k 短的答案...

weixin_44059127的博客 535

19 ccpc网络赛 path //bfs

http://acm.hdu.edu.cn/showproblem.php?pid=6705 题意:给一个有向图,求所有路径中(可以重复走一条边)的第k短边的长度。 思路:先把所有的点的最短出边(u,v,c,id)塞到队列,然后bfs,每次拿出队列里最短边,考虑加边(v的最短出边)或者换边(u的出边的较短边)。一开始bfs塞进去n条,每次bfs都pop()一条,push两条,共n+k条,不会t...

Rshs 231
上一篇: HDU6703 CCPC-网络赛 1002 array (主席树 + set)/(权值线段树)
下一篇: HDU6704 CCPC网络赛 K-th occurrence (后缀数组 + ST表 + 主席树)
ttoobne
博客等级 码龄9年 13粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值