HDU 6181Two Paths——————(求次短路)

从Low Byte解析DTC故障类型:系统开发中的诊断精细化实践 本文深入解析DTC故障诊断中Low Byte的关键作用,详细介绍了其在系统开发中的精细化应用实践。通过分析Low Byte的编码规则和故障分类设计,帮助开发者优化诊断数据库和解码方案,提升汽车电子系统的故障诊断效率和准确性。 阅读详情

Two Paths

Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 153428/153428 K (Java/Others)
Total Submission(s): 2139    Accepted Submission(s): 834


Problem Description
You are given a undirected graph with n nodes (numbered from 1 to n) and m edges. Alice and Bob are now trying to play a game.
Both of them will take different route from 1 to n (not necessary simple).
Alice always moves first and she is so clever that take one of the shortest path from 1 to n.
Now is the Bob's turn. Help Bob to take possible shortest route from 1 to n.
There's neither multiple edges nor self-loops.
Two paths S and T are considered different if and only if there is an integer i, so that the i-th edge of S is not the same as the i-th edge of T or one of them doesn't exist.
 

Input
The first line of input contains an integer T(1 <= T <= 15), the number of test cases.
The first line of each test case contains 2 integers n, m (2 <= n, m <= 100000), number of nodes and number of edges. Each of the next m lines contains 3 integers a, b, w (1 <= a, b <= n, 1 <= w <= 1000000000), this means that there's an edge between node a and node b and its length is w.
It is guaranteed that there is at least one path from 1 to n.
Sum of n over all test cases is less than 250000 and sum of m over all test cases is less than 350000.
 

Output
For each test case print length of valid shortest path in one line.
 

Sample Input
2 3 3 1 2 1 2 3 4 1 3 3 2 1 1 2 1
 

Sample Output
5 3
Hint
For testcase 1, Alice take path 1 - 3 and its length is 3, and then Bob will take path 1 - 2 - 3 and its length is 5. For testcase 2, Bob will take route 1 - 2 - 1 - 2 and its length is 3

给定多张无向图,求出每张图中的从s到t的次短路

Input
第一行一个数T,表示数据组数
后面给出T张无向图

Output
对每一张图,给出其次短路


裸的次短路问题
G[i]忘清空了,WA了好多次,
难受。
很难受。

#include<bits/stdc++.h>
#include<vector>
using namespace std;
typedef long long ll;
typedef pair<ll,ll> P;
const ll INF  = 1e18;
const int MAXN = 2e5+7;
struct edge{
        ll to,cost;
        edge(){};
        edge(ll _to, ll _cost)
        {
                to = _to;
                cost = _cost;
        }
};

vector<edge> G[MAXN];
int n,m;
ll dist[MAXN];
ll dist2[MAXN];

void slove()
{
        priority_queue<P, vector<P>, greater<P> >que;
        fill(dist, dist + n + 1, INF);
        fill(dist2,dist2+ n + 1, INF);
        dist[0] = 0;
        que.push(P(0,0));
        while(!que.empty())
        {
                P p = que.top(); que.pop();
                ll v = p.second, d = p.first;
                if(dist2[v] < d)        continue;
                for(int i = 0; i < G[v].size(); ++i )
                {
                        edge &e = G[v][i];
                        ll d2 = d + e.cost;
                        if(dist[e.to] > d2)
                        {
                                swap(dist[e.to], d2);
                                que.push(P(dist[e.to], e.to));
                        }
                        if(dist2[e.to] > d2 && dist[e.to] < d2)
                        {
                                dist2[e.to] = d2;
                                que.push(P(dist2[e.to],e.to));
                        }
                }
        }
        printf("%lld\n",dist2[n-1]);
}
int main()
{
        int t;
        scanf("%d",&t);
        while(t--)
        {
                scanf("%d %d",&n,&m);
                ll x,y,z;
                for(int i=0;i<=n;i++)
                        G[i].clear();
                for(int i=0;i<m;i++)
                {
                        scanf("%lld %lld %lld",&x,&y,&z);
                        G[x-1].push_back(edge(y-1, z));
                        G[y-1].push_back(edge(x-1, z));
                }
                slove();
        }
        return 0;
}


领域知识图谱构建的技术流程 因此概念的属性定义十分重要,通常大部分知识库中的概念属性都是采用人工定义等方式生成的,通用知识图谱则可以从开放数据集中获取概念的属性,然后从在线百科中学习实体的属性,并对实体属性进行往上规约从而生成概念的属性。由于百科的分类体系都是经过了百科管理员或是高级编辑人员的校验,其分类系统中的数据可靠性非常高,因此从百科中抽取概念和实体,通常将标题作为实体的候选,而将百科中的分类系统直接作为概念的候选。为了对知识进行合理的组织,更好地描述知识本身与知识之间的关联,需要对知识图谱的模式进行良好的定义。 阅读详情

相关推荐

【芯片驱动】2. CMT2300A配合硬件测试(灵敏度和发射功率)的软件实现

前言 在开发一款无线射频产品的时候,软件是一部分,硬件也是一部分。而决定无线收发性能的,首先是硬件的匹配电路,然后才到软件部分的优化。 一款无线射频产品,首先需要先决定是在那个频率范围内(当然是国家允许的范围内),然后硬件则需要在基于这个频点范围进行硬件的参数匹配,具体又分为发送功率匹配、天线匹配、和接收灵敏度的匹配。 现在我们使用2300a这款无线芯片来说,除非自己的团队是射频专家,则可以自己进行无线外围电路的设计外,另外一种更加快捷的方式,就是寻找原厂技术支持,他们会给...

sishuihuahua的博客 7055

HDU - 6181 Two Paths(真 · 求次短路径)

Two Paths Problem Description You are given a undirected graph with n nodes (numbered from 1 to n) and m edges. Alice and Bob are now trying to play a game.  Both of them will take different

LP_Cong 1262

稀疏变分高斯过程【超简单,全流程解析,案例应用,简单代码】

稀疏变分高斯过程(Sparse Variational Gaussian Processes, SVGP)是一种高效的高斯过程(GP)近似方法,它使用一组称为引入点的固定数据点来近似整个数据集。这种方法大大减少了高斯过程模型的计算复杂度,使其能够适用于大数据集。下面是SVGP的详细数学过程。在标准高斯过程中,给定数据集xiyii1N{(xi​yi​i1N​,目标是学习一个映射fff,其中f∼GPmkf∼GPmkmmm是均值函数,kkk。

刘文凯的博客 3658

HDU 6181:Two Paths(次短路)

Two Paths Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 153428/153428 K (Java/Others) Total Submission(s): 2184 Accepted Submission(s): 856 Problem Description You...

weixin_33979363的博客 189

【AutoSar CP】SoAd模块

比如对于特定的PDU,其PduId在程序编译时就确定了,但是在代码运行中,该PduId可能需要发送到不同的远端ip,这时就需要用SoAd来设置连接远端地址信息。SoAdSocketConnectionGroup(连接参数)SoAdSocketRoute(接收数据)SoAdRoutingGroup(开关)SoAdPduRoute(发送数据)

至道无难,唯嫌拣择。 1686

C++利用spdlog生成日志

C++利用spdlog生成日志下载编译spdlog配置并使用 环境:Win10-x64+VS2015 spdlog是一个快速的C++日志库,能够兼容C++11,具备快速、无需依赖第三方库、支持多线程、多平台的优良特性! 下载编译spdlog 1.第一步,下载spdlog 下载spdlog,下载地址:https://github.com/gabime/spdlog#header-only-version,从Github上下载zip压缩包。下载完成后会获取一个名为spdlog-1.x.zip的压缩包 2.第二步

weixin_42975610的博客 3222

HDU 6181 Two Paths (次短路)

Two Paths Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 153428/153428 K (Java/Others) Total Submission(s): 5    Accepted Submission(s): 2 Problem Description You are given a undi

Mr_Treeeee的博客 867

用 Custom Entity 打造 RAP Value Help:从能跑到好用的深度踩坑笔记

本文介绍了在RAP项目中实现Value Help(Fiori输入帮助)的完整流程。通过Custom Entity方式,开发者可以灵活构建不依赖数据库实体的值帮助功能,但需手动实现CDS原本提供的过滤、排序、分页等能力。文章以一个典型场景为例,详细说明了如何为Partner维护界面的City字段创建可搜索的值帮助,包括创建查询实现类、绑定CDS Custom Entity、服务发布等关键步骤,并特别指出了处理排序分页请求等常见问题。最后强调在ABAP Cloud环境下需要自行实现查询能力,而非依赖传统工具类。

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

hdu Two Paths 次短路模板 (可往回走)

#include <cstdio> #include <cstring> #include <queue> #include <algorithm> #define MAXN (200000 + 10) #define INF 0x3f3f3f3fc using namespace std; typedef long long LL;struct edge { int to, cost;

DK 341

CloudCompare 二次开发(6)——插件中拖拽添加Qt窗口(区域生长算法为例)

手动拖拽的方式搭建Qt对话框界面的制作流程,以PCL中的点云区域生长算法为例进行制作。

点云侠的博客 2153

Altium Designer(AD)仿真实验操作指南

1:运行仿真2:设置仿真3:放置电源模块4:放置器件模块5:探针。

XU157303764的博客 8901

hdu6181Two Paths-(次短路)

题解:就是求次最短路 求1-n的次最短路就是1-x的最短路+edge[x][y]+y-n的最短路即可 #include #include #include #include #include using namespace std; typedef long long int ll; const int R = 100000+5; const int INF = 0x3f3f3f3f

Soul 860

华为OD机试真题 新系统2026-04-15 C++ 实现【失灵的键盘】

有一个键盘有2个按键失灵了,按下这些键时会连续输出其他键对应的字符两次。具体如下: 1. 按下j键一次,屏幕上显示uu(两个连续的u);  按下b键一次,屏幕上显示t(两个连续的t) 2. u键和t键是好的,按下u键一次时,屏幕只会显示一次u(正常按键);按下t键一次时,屏幕只会显示一次t(正常按键) 3. 假定屏幕上连续显示两个t一定是按了一次b键,而不是两次t键;假定按键t之后不会紧接着按键b,即tttt转义为两个b,而不可能是tb

MISAYAONE的博客 212

[hdu 6181 Two Paths] Dijkstra求次短路

[hdu 6181 Two Paths] Dijkstra求次短路分类:Graph Dijkstra 1. 题目链接[hdu 6181 Two Paths]2. 题意描述给定一个NN个顶点MM条边的无向图。求图中从点11到点NN的次短路。(次短路上一条边允许经过多次)。3. 解题思路首先,以点11、点NN为源点分别跑一次最短路。设点11到点uu的最短路为d1[u]d1[u],点NN到点uu的最短路为

Fighting! 774

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

hdu6181Two Paths(第十场-dij求次短路)

Two Paths Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 153428/153428 K (Java/Others) Total Submission(s): 842    Accepted Submission(s): 396 Problem Description You are given a

wo的只属于我 366

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

HDU6181-Two Paths【A*算法or次短路】

Two PathsTime Limit: 4000/2000 MS (Java/Others) Memory Limit: 153428/153428 K (Java/Others) Total Submission(s): 190 Accepted Submission(s): 113Problem Description You are given a undirected gr

algzjh的博客 2095

DIJ(单源次短路) - Two Paths - HDU 6181

DIJ(次短路) - Two Paths - HDU 6181 题意: 给定一个n个点,m条边的无向图,给定一个n个点,m条边的无向图,给定一个n个点,m条边的无向图, 计算次短路(与最短路至少有一条边不同)。计算次短路(与最短路至少有一条边不同)。计算次短路(与最短路至少有一条边不同)。 输入: T组测试数据,T组测试数据,T组测试数据, 每组数据首行包括两个正整数n和m,每组数据首行包括两个正整数n和m,每组数据首行包括两个正整数n和m, 接着m行输入m条边,每行有三个正整数,u、v、w,表示点u和v之

njuptACMcxk的博客 1422

【hdu 6181】Two Paths

【链接】http://acm.hdu.edu.cn/showproblem.php?pid=6181 【题意】 让你求从1到n的次短路 【题解】 模板题; 因为点可以重复走; 则一定会有次短路。 dijkstra算法+优先队列优化一下就好. 【错的次数】 11+ 【反思】 在写优先队列的时候,节点和路径长度写反了..应该节点写在后面才行的。。 【代...

AWCXV 224

HDU - 6181 Two Paths(次短路)

题意:求次短路。 分析:关键是情况讨论。 LL tmpd = x.d + e.dist; 以下情况对应的更新结果 1、tmpd(2) < 最短路(3) < 次短路(4)-------> 最短路 = 2,次短路 = 3 2、tmpd(2) = 最短路(2) < 次短路(3)-------> 最短路 = 2,次短路 = 2 3、最短路(2) <...

Cherrychan2014的博客 207

2017多校第10场 HDU 6181 Two Paths 次短路

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6181 题意:给一个图,求出次短路。 解法:我之前的模板不能解决这种图,就是最短路和次短路相等的情况,证明这题数据还是水了。下来我修改了一下次短路的,就可以避免这种情况了。提供一个sample 4 4 (1,2,1)( 1, 3,1) (2 4,1) (3 ,4,1)。这组的正确答案是2...

aishangg437965的博客 147

hdu6181Two Paths(次短路模板题)

思路: 裸的次短路题,多校的时候直接网上找了个模板,改了改范围和变量类型就1a了,看来很好用,直接盗取了=。= 代码: #include #include #include #include #include #include #include #include #include #define MEM(a,x) memset(a,x,sizeof a) #define

exp1ore的博客 467

HDU 6181 Two Paths【次短路】【模板题】

Two Paths Time Limit: 4000/2000 MS (Java/Others)Memory Limit: 153428/153428 K (Java/Others) Total Submission(s): 236Accepted Submission(s): 138 Problem Description You are given a...

aaf76097的博客 175

Two Paths HDU - 6181 次短路

明明是裸的水题。。可是没法一下子做出来。。因为在d2和d1的地方的细节卡了。。 还有看别人的代码。void spfa( ){ queue<int>q; q.push(1);dist[1][0]=0; while(!q.empty()){ int u=q.front();q.pop(); inq[u]=0; for(int i=

now_ing的博客 273

hdu6181 Two Paths 次短路模板

广西模拟赛后开始艰辛的改代码风格 /* *********************************************** Author :BPM136 Created Time :2017/8/28 21:55:06 File Name :6181.cpp ***********************************************

BPM136 713

【多校训练】hdu 6181 Two Paths 次短路径 Dijkstra

Problem Description You are given a undirected graph with n nodes (numbered from 1 to n) and m edges. Alice and Bob are now trying to play a game.  Both of them will take different route from 1 to

弱菜zc 748

hdu 6181 Two Paths(次短路)

Two Paths Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 153428/153428 K (Java/Others) Total Submission(s): 150    Accepted Submission(s): 88 Problem Description You are given a undir

咸鱼有梦想 444

hdu 6181 Two Paths (次短路)

当时再搬宿舍,2点多看了下,特困,看了别人说次短路,我只做过次小生成树,没做过这个,提交了个模板就睡觉了。下午去海里游泳,贼刺激,说实话海水不好喝,闭气躺在海上是真的爽,以前总是用泳圈在玩,现在感觉游泳圈不好玩了。 次短路,数据结构以前可能做过,总有点印象,总感觉自己敲过不止一遍这个。 如果当前路径比最短路短,就把最短路的值给次短路,最短路要当前值。 如果当前值比最短路长,比次短路短

但求心安的博客 337
上一篇: 数据结构——————排序算法代码实现(未完待续......)
下一篇: Codeforces 997B. Two-gram——————水题复习一下map
陶鸿杰
博客等级 码龄9年 93粉丝 298原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值