首页 > 其他分享 >最短路默写

最短路默写

时间:2024-10-18 16:25:53浏览次数:2  
标签:0x3f dist int 短路 memset 默写 sizeof

有一无负权有向图。求指定两点间的最短路径。

数据范围:所有数据不超过 100

直接最短路板子写上:

#include<bits/stdc++.h>
using namespace std;
const int N=510;
int n,m;
int g[N][N],dist[N];
int x,y,z,s,t;
bool vis[N];
int Dijkstra(int s,int t){
	memset(dist,0x3f,sizeof dist);
	dist[s]=0;
	for(int i=1;i<n;i++){
		int t=-1;
		for(int j=1;j<=n;j++) if(!vis[j]&&(t==-1||dist[j]<dist[t])) t=j;
		vis[t]=true;
		for(int j=1;j<=n;j++) dist[j]=min(dist[j],dist[t]+g[t][j]);
	}
	return (dist[t]==0x3f3f3f3f?-1:dist[t]);
}
int main(){
	ios::sync_with_stdio(false);
	cin.tie(nullptr),cout.tie(nullptr);
	cin>>n>>m;
	memset(g,0x3f,sizeof g);
	for(int i=1;i<=m;i++){
		cin>>x>>y>>z;
		g[x][y]=min(g[x][y],z);
	}
	cin>>s>>t;
	cout<<Dijkstra(s,t)<<'\n';
	return 0;
}

标签:0x3f,dist,int,短路,memset,默写,sizeof
From: https://www.cnblogs.com/Merge-Change230/p/18474516

相关文章

  • 图论day64 :最短路径算法 | SPFA(Bellman_ford的队列优化版)、城市间货物运输 I、Ⅱ、Ⅲ
    图论day64:最短路径算法|SPFA(Bellman_ford的队列优化版)、94.城市间货物运输I(卡码网)【SPFA算法+邻接表优化】、95.城市间货物运输II(判断负权回路)、96.城市间货物运输III【已知有负权回路,该如何计算】、Bellman_ford算法思维导图汇总SPFA(Bellman_ford的队列优化版)94......
  • 浅谈一类最短路问题
    P2685[TJOI2012]桥首先求出一个最短路树,显然只能删除树上的边才对答案有影响。最短路树有很多,任意求一个可以吗?可以,因为删除一条边后就可以走另一个最短路树了。枚举删除哪一条边并不好计算。考虑最后我们最短路一定是\(1\tol_x\tox\toy\tor_y\ton\)的样子,所以我们考......
  • 最小生成树&最短路杂题
    contestlinkA与cheaprobot是一个题,就是跑多元最短路之后\(dis_u+dis_v+w(u,v)\)赋权跑Kruskal重构树即可B注意到是网格图,那么\(u,v\)不连通也就是以其为源点/汇点存在一个割。转对偶图之后也就是判环,那么在删除\((u,v)\)之前对偶图里其对应点已经连通就NIE,否则TAK......
  • 平面图最短路与对偶图网络流
    一个相当厉害的东西啊。参考原件:IOI2008国家集训队论文——周冬。图片引自OI-wiki平面图llmmkk’sblog论文原件先给出结论:平面图最小割等于其对偶图最短路平面图平面图,指可以通过画图方式将使得边两两不相交的图。(无向图)例如:事实上是:一些概念:设\(G\)......
  • 最短路
    dijkstra更好的理解主要思想:每次确定一个点的最短距离我们将图分为2块,一块为最短距离确定的点集,一块为没有确定最短距离的点集,通过前者向后者拓展,来求得答案我们将所有已经有dis数值的点加入堆,然后每次dis数值最小的它的dis值就是最终的dis距离,所以可以将其加入到距离确定点集......
  • 18732 最短路问题
    ###思路1.**建模问题**:将车站和公交线路建模为图,其中车站是节点,公交线路是带权边。2.**选择算法**:使用Dijkstra算法求解从车站1到车站n的最短路径问题。3.**初始化**:创建一个优先队列(最小堆)来存储当前节点和到达该节点的最小花费。初始化所有节点的最小花费为无穷大,起......
  • NOI提高级 图论算法:单源次短路
    DIJ(单源次短路)-TwoPaths-HDU6181DIJ(单源次短路)-TwoPaths-HDU6181-CSDN博客单源次短路(P2829大逃离)单源次短路(P2829大逃离)-CSDN博客单源次短路算法学习笔记单源次短路算法学习笔记-Wiueh_Plus-博客园次短路及次短路计数次短路及次短路......
  • P4779 【模板】单源最短路径(标准版)
    堆优化版:通过定义一个最小堆来实现普通版本中的查找操作点击查看代码#include<iostream>#include<stack>#include<cmath>#include<algorithm>#include<set>#include<vector>#include<climits>#include<string.h>#include<map>#in......
  • 322. 零钱兑换(最短路做法leetcode)
    322.零钱兑换classSolution{publicintcoinChange(int[]coins,intamount){//使用图的方式解决//最短路问题,总金额从0到amount需要走多少步//每一步能迈向的点都是面额里的点+出发点//每步的边权都是1,重要的是走到amount......
  • Leetcode 864. 获取所有钥匙的最短路径
    1.题目基本信息1.1.题目描述给定一个二维网格grid,其中:‘.’代表一个空房间‘#’代表一堵墙‘@’是起点小写字母代表钥匙大写字母代表锁我们从起点开始出发,一次移动是指向四个基本方向之一行走一个单位空间。我们不能在网格外面行走,也无法穿过一堵墙。如果途经一个......