HDU 3631 Shortest Path

两种方法解决这个问题OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized. 两种方法解决这个问题OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.在进行深度学习比如在训练yolov8模型时,在加载训练集和验证集时会报以下那个错误时会导致模型训练中断,有以下两个方法去解决这个问题,来使模型正常训练。 阅读详情

传送门

floyd插点。(看起来难实际很简单)
给你一个有向多重图(就是可能会有重边和自环,对应简单图),会标记一些点,然后再询问给定两点的最短路,要求该最短路上经过的点都是被标记过的(必然包括起点终点)。

权值都为正,看样例,发现当起点终点相同时最短路必然是0(当然这个点得标记过才行)。其实这题就是把floyd的第一层循环k拆成在线处理了,给一个标记点,然后就运行一遍以这个标记点为k值的2/3版的floyd就完事了,当问最短路的时候都是建立在这句之前的操作上,那么就直接输出当前结果就ok了。

理解floyd的动态规划本质,所谓k就是个中介点,而且不用关心k的循环次序。每次输出的最短路绝对不会经过没标记的点,因为之前没拿那些点当中介点。

这道题输出也给你玩个文字游戏,要求每相邻两个case之间才能有空行,最后不能有。


#include <cstdio>
#include <iostream>
#include <algorithm>
#include <vector>
#include <cstring>
#include <string>
#include <queue>
using namespace std;

const int INF = 1e9;
const int MAX = 300 + 5;
int N, M, Q;

int g[MAX][MAX];
bool mark[MAX];

void init()
{
	for (int i = 0; i < N; i++)
	{
		g[i][i] = 0;                                    // 
		for (int j = i + 1; j < N; j++)                 // 这样就比较简洁
		{
			g[i][j] = g[j][i] = INF;
		}
	}
	memset(mark, 0, sizeof mark);
}

void floyd_k(int k)
{
	for (int i = 0; i < N; i++)
	{
		for (int j = 0; j < N; j++)
		{
			if (g[i][k] != INF && g[k][j] != INF && g[i][k] + g[k][j] < g[i][j])
			{
				g[i][j] = g[i][k] + g[k][j];
			}
		}
	}
}

int main()
{
	int a, b, c;
	for (int cnt = 1; ~scanf("%d%d%d", &N, &M, &Q); cnt++)
	{
		if (!N && !M && !Q) break;
		init();
		for (int i = 0; i < M; i++)
		{
			scanf("%d%d%d", &a, &b, &c);
			g[a][b] = min(g[a][b], c);
		}

		if (cnt != 1) printf("\n");
		printf("Case %d:\n", cnt);
		for (; Q--;)
		{
			scanf("%d", &a);
			if (a == 0)
			{
				scanf("%d", &b);
				if (mark[b]) printf("ERROR! At point %d\n", b);
				else
				{
					mark[b] = true;
					floyd_k(b);
				}
			}
			else
			{
				scanf("%d%d", &b, &c);
				if (!mark[b] || !mark[c]) printf("ERROR! At path %d to %d\n", b, c);
				else if (g[b][c] == INF) printf("No such path\n");
				else printf("%d\n", g[b][c]);
			}
		}
		//printf("\n");
	}

	return 0;
}
激光焦点动态跟踪技术实战大揭秘:电容式与同轴视觉的巅峰对决 激光焦点动态跟踪技术是保证激光加工质量的关键因素。本文对比评测了电容式和同轴视觉两种主流技术:电容式响应速度快、成本低,适合高速稳定加工环境,但易受电磁干扰;同轴视觉精度高、抗干扰强,适合精密加工和复杂工件,但成本较高且处理速度受限。评测结果表明,企业应根据加工需求、预算和环境选择合适技术。未来该技术将向智能化、多技术融合方向发展,为工业应用提供更优解决方案。 阅读详情

相关推荐

kernel: TCP: out of memory -- consider tuning tcp_mem 问题处理记录

参数名 说明 net.ipv4.tcp_max_tw_buckets = 6000 系统同时保持TIME_WAIT套接字的最大数量,如果超过这个数值将立刻被清楚并输出警告信息。默认值为180000。对于squid来说效果不是很大,但可以控制TIME_WAIT套接字最大值,避免squid服务器被拖死。 net.ipv4.tcp_rmem = 4096 87380 4194304 接收窗口的最大大小...

weixin_46691674的博客 6892

HDU3631:Shortest Path(Floyd)

Problem Description When YY was a boy and LMY was a girl, they trained for NOI (National Olympiad in Informatics) in GD team. One day, GD team’s coach, Prof. GUO asked them to solve the following sho

ACM!荣耀之路! 1752

CSP-J 初赛模拟卷1 题解

只有一棵子树有后继,其他的都是叶结点才能保证树的深度最大,此时还剩(n-5)个结点,最后加上2,得到(n-3),即为答案。题解:先修改p的指针域,让它的左指针域指向q,然后再让q的右指针域赋值给p的右指针域,再然后修改q的右指针域使其指向p,最后需要改变的指针域就是原先q结点的后继节点的左指针域内容。设n个元素的入栈序列是1,2,3,...,n,出栈序列为p1,p2,...,pn,若p1=n,则pi(1≤i≤n)的值为(1)输入的三个数中,第二个数应是[0,11]上的整数,否则会出现数组越界的问题。

Sat77GryHp_Pro的博客 2805

牛客2018多校训练-----Touring cities(黑白棋盘规律题)

链接:https://www.nowcoder.com/acm/contest/146/E 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 262144K,其他语言524288K 64bit IO Format: %lld 题目描述 Niuniu wants to tour the cities in Moe country. Moe country has...

jinghui_7的博客 792

从报错到定位:Memtest86 DQ位算法解析与实践指南

本文深入解析了Memtest86内存测试工具报错信息的解读方法,重点介绍了通过地址解析、数据转换、位比对和DQ定位四步算法,精准锁定故障DQ位的实践流程。文章以DDR4和DDR5为例,详细拆解了从十六进制报错到二进制比对的完整步骤,并提供了从单个报错分析到故障模式诊断的进阶指南,帮助用户将抽象的报错信息转化为具体的维修或排查依据。

sre5engineer的博客 486

内核工作FAST‘25 Artifact Evaluation流程记录

在我们的paper中,复现需要用到傲腾持久化内存,因此,需要AE Reviewer访问到内网服务器中。我们的思路是购买云服务器,将其作为跳板机,内网服务器通过SSH反向代理与公网服务器建立隧道,AE Reviewer通过隧道访问内网服务器。我们在AE过程中使用。然后,把一切复现需要的代码环境,在chroot里面配置完成。

不定期更新系统使用、编程小技巧,哔哩哔哩账号:https://space.bilibili.com/399455629,欢迎关注 1215

HDU3631Shortest Path(Floyd的巧妙应用)经典

Shortest Path Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4379    Accepted Submission(s): 1029 Problem Description When YY was a bo

青山绿水之辈 专栏 1740

风控IV、AUC、KS python计算代码

df_temp:数据集,Y:是否逾期标签,feas_list:需要计算IV的 变量。2、 按月和不同Y 下的 IV计算。

暮雨听轩的专栏 1618

hdu3371 Connect the Cities (MST)

Connect the Cities Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 13722    Accepted Submission(s): 3711 Problem Description ...

weixin_34347651的博客 126

小黄鸭机器人技术全解-第 07 章 关节自由度与行程参数

—鸭子歪着头转头时,转的平面是斜的,这正是它"灵动"感的来源。仿真里这是自动的(轴定义在父刚体系),复刻时不需要做任何事——

yolo模型训练找我,AI游戏合作找我 65

【功能安全】【AutoSAR】程序流监控机制

目录 一、程序流执行的常见故障 二、程序流的监控机制 1、监控功能的实现 2、三种监督机制 a、生命监测机制 b、截止时间监测机制 c、逻辑程序流监测机制 一、程序流执行的常见故障 与程序流相关的故障,在ISO26262中第六章附录D中定义如下: — 执行阻塞; — 死锁; — 活锁; — 执行时间的不正确分配; — 软件要素间的不正确同步。 二、程序流的监控机制 1、监控功能的实现 AutoSAR中对程序流的监控功能的实现主要有“看门狗”栈(Watchdog Stack).

专注汽车软件开发、AutoSAR、车载以太网、SOA、EE架构。 4517

HDU 3631 Shortest Path(Floyd 算法)

HDU 3631 Shortest Path 题意:给一个 n 个节点的 有向图 以及 m 条边。回答 q 条询问,0 表示标记点,1 表示查询两点间最短距离。 题解:由于此时只需要操作被标记的点,故使用 Floyd 算法每次加入被标记点 K 即可。AC代码如下: #include<bits/stdc++.h> using namespace std; int const inf = ...

BeZer0的学习笔记 266

SAP Single Sign-On 全景指南:从传统 SAP SSO 到 SAP Secure Login Service for SAP GUI 的架构、场景与迁移实践

本文系统梳理了SAP生态下的单点登录技术方案,重点分析了SAP GUI的云化替代方案SAP Secure Login Service(SLS)。内容涵盖SNC、Kerberos/SPNEGO、SAML 2.0等核心协议的技术实现,对比了传统SAP SSO与新型SLS for SAP GUI的架构差异,并给出AS ABAP系统的具体实施路径。针对SAP GUI访问、浏览器访问Fiori/移动端等不同场景,提供了详细的协议选型建议和配置指南,帮助团队构建安全可靠且适应云时代的统一认证体系。

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

hdu3631 Shortest Path

#include #include #include #include using namespace std; const int INF = 1 const int N = 1002; int path[N][N]; bool vis[N]; int m, n, q; int Min(int a, int b) {     ret

Iguodala的博客 452

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【HDU】3631 Shortest Path 【floyd】

传送门:【HDU】3631 Shortest Path

poursoul 592

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

hdu 3631 Shortest Path 最短路 Floyd

原题链接   题意:给出n个点0~(n-1),m条边(单向),q次操作。操作有两种:0:标记x点,如果标记了就输出"ERROR! At point x”。    1: 问从 x 到 y 的最短路(x,y和经过的点都必须被      标记过),如果x,或y没有被标记过输出“ERROR! At path x to y”,如果没有路输出“No such path”。 对于这个题Floyd就非常适用...

一叶之修的博客 221

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

HDU 3631Shortest Path(flody变形)

题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3631 这题不难,简单的

scf0920 952

HDU3631 Shortest Path

http://acm.hdu.edu.cn/showproblem.php?pid=3631 题意:给一个图。接着是M个操作,有两种:1.标记某个点2.求某两点间的最短路径,要求该路径通过被标记的点。 利用弗洛伊德算法思想,每次新标记一个点时,判断以下该点是否会对其他两点间的距离造成影响。 #include #include using namespace std; #de

Chromer_cn的专栏 442

HDU3631-Shortest Path

http://acm.hdu.edu.cn/showproblem.php?pid=3631 #include<iostream> #include<cstdio> #include<cstring> #define INF 0x3f3f3f3f #define n 305 using namespace std; int map[n][n]...

weixin_30535913的博客 104

HDU3631(Shortest Path)

Shortest Path Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4637    Accepted Submission(s): 1105 Problem Description When YY was a bo

Mad_boys的博客 587

【ICPC-314】hdu 3631 Shortest Path

点击打开链接hdu 3631 思路:最短路+floyd 分析: 1 题目给的n <= 300,而边数m<=100000,并且有Q<= 100000次询问。刚开始我用优先队列+Dij然后就开始TLE,然后就没然后了。 2 看了题解之后猛然发现这尼玛就是floyd,(对算法理解不透测)。我们知道floyd就是每次都拿一个中间点k来更新dis,题目中是只有标记过的点才能够使用,...

藏经阁 | 玄苦 1310

HDU 3631 Shortest Path Floyd

题目链接http://acm.hdu.edu.cn/showproblem.php?pid=3631题意给定一含n个结点的有向带权图,编号0~n-1,每个点都有一个标记,初始时每个点都没被标记。然后给q个询问,每个询问的格式有两种。 1. 0 x:代表标记x结点。 2. 1 x y 代表求x到y的最短路,最短路只能走被标记的点。思路主要是求最短路,其他的注意细节。每个点被标记,那么就用这个点

chen_minghui的博客 274

hdu 3631 Shortest Path(最短路)

题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3631 解题思路: 题目大意:有向图(three integers (x, y, c): initial vertex (x), terminal vertex (y)),有重边。选中一些点,在这些点里面求两点的最 短路。有2个操作,操作 "0" 表示标记 x ,如果x之前已经被标记,输出

piaocoder 501

hdu 3631 Shortest Path(Floyd)

hdu 3631 Shortest Path(Floyd)

1485

HDU 3631 Shortest Path

题目链接题意:给定一张图,求过给定的点的最短路。分析:floyd算法,中间节点k只取标记过的#include<cstdio> #include<algorithm> #include<cstring> #define MAX_N 305 #define MAX_M 100005 #define MAX_Q 100005 #define inf 0x3f3f3f3f using namespace s

HYB733093411的博客 392

hdu 3631 Shortest Path

点击打开链接hdu 3631 思路:最短路+floyd 分析: 1 题目给的n &lt;= 300,而边数m&lt;=100000,并且有Q&lt;= 100000次询问。刚开始我用优先队列+Dij然后就开始TLE,然后就没然后了。 2 看了题解之后猛然发现这尼玛就是floyd,(对算法理解不透测)。我们知道floyd就是每次都拿一个中间点k来更新dis,题目中是只有标记过的点才能够使...

我是传奇 211
上一篇: HDU 3768 Shopping
下一篇: HDU 3832 Earth Hour
Crossing over
博客等级 码龄10年 6粉丝 113原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值