P3371 【模板】单源最短路径(弱化版)
题目
P3371 【模板】单源最短路径(弱化版)
分析
Dijkstra模板题,只不过这里用了链式前向星
AC代码
#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#define MAXN 1000000
using namespace std;struct Edge
{int to;int w;int next;
}edge[MAXN];
int id = 0;
int dis[MAXN], vis[MAXN], head[MAXN];void add(int u, int v, int w)
{edge[id].to = v;edge[id].w = w;edge[id].next = head[u];head[u] = id++;
}int main()
{int n, m, s;scanf("%d%d%d", &n, &m, &s);for (int i = 1; i <= n; i++){dis[i] = 2147483647;}for (int i = 0; i < m; i++){int u, v, w;scanf("%d%d%d", &u, &v, &w);add(u, v, w);}int cur = s;dis[s] = 0;int MIN;while (!vis[cur])// 遍历{vis[cur] = true;// 标记已做过松弛操作,即已更新其最小值 for (int i = head[cur]; i != 0; i = edge[i].next){if (!vis[edge[i].to] && dis[edge[i].to] > dis[cur] + edge[i].w){dis[edge[i].to] = dis[cur] + edge[i].w;} }MIN = 2147483647;for (int i = 1; i <= n; i++){if (!vis[i] && MIN > dis[i]){MIN = dis[i];cur = i;}}}for (int i = 1; i <= n; i++){printf("%d ", dis[i]);} return 0;
}
P3371 【模板】单源最短路径(弱化版)相关推荐
- p3371 单源最短路径(弱化版)-java题解-最短路
弱化版传送门: P3371 [模板]单源最短路径(弱化版) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目背景 本题测试数据为随机数据,在考试中可能会出现构造数据让SPFA不通 ...
- p4779 单源最短路径(标准版)-java版
传送门: P4779 [模板]单源最短路径(标准版) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P4779 先给 ...
- 洛谷 P3371 【模板】单源最短路径(弱化版)【最短路】【spfa】
洛谷 P3371 [模板]单源最短路径(弱化版) 一.题目链接 二.题目分析 (一)算法标签 (二)解题思路 三.AC代码 四.其它题解 一.题目链接 洛谷 P3371 [模板]单源最短路径(弱化版) ...
- 最短路——【模板】单源最短路径(弱化版)(dijkstra)
题目链接 最短路--[模板]单源最短路径(弱化版)(dijkstra) 题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 输入格式 第一行包含三个整数 n,m,s,分别表示点 ...
- 洛谷_P3371 【模板】单源最短路径(弱化版)_dijkstra_堆优化
洛谷_P3371 [模板]单源最短路径(弱化版)_dijkstra_堆优化 // dijkstra最短路算法_堆优化 #include<bits/stdc++.h> using names ...
- P4779 【模板】单源最短路径(标准版)
# [模板]单源最短路径(标准版) ## 题目背景 2018 年 7 月 19 日,某位同学在 [NOI Day 1 T1 归程](https://www.luogu.org/problemnew/s ...
- Luogu 3371【模板】单源最短路径
Luogu 3371[模板]单源最短路径 第一次写博客用图论题来试一试 接下来是正文部分 题目描述 如题,给出一个有向图,请输出从某一点出发到所有点的最短路径长度. 输入输出格式 输入格式: 第一行包 ...
- 55、【图】Dijkstra求最短路径(单源最短路径+边权重为正数)(C/C++版)
算法介绍 Dijkstra算法是基于贪心思想,用于实现只含有正权边的单源最短路径问题,单源路径是从一个固定起始点出发到其余各点的路径. 算法过程: 首先,获取起始点到其余点的距离,然后从起始点出发,每 ...
- Dijkstra算法求解单源最短路径问题
文章目录 一 前言 二 Dijkstra 算法讲解 1. 贪心算法的证明 2. 算法实现说明 3. 初版Dijkstra算法代码 三 时间复杂度优化 1. 优化策略 2. 优化后的代码 四 结语 一 ...
最新文章
- redis mysql 集群_mysql_redis
- 30种编程语言的比较选择问题
- python变量类型-Python 变量类型详解
- codeforces#254DIV2解题报告
- 英文文章如何进行略读
- TI Davinci DM6441嵌入式Linux移植攻略——UBL移植篇
- 计算机一级115,计算机一级BASIC模拟115.doc
- 过去15年间,到底是什么真正推动了云计算的革命?
- 【ExtJs】获取grid选中的records
- win10远程桌面Android软件,Microsoft发布了适用于Android的远程桌面应用程序10.0.7版的重大更新...
- 金融量化-SMA_移动平均及双均线模型
- vc html插件,VC++6.0插件系列(绝对经典)
- visual studio发布网站的时候水晶报表rpt格式文件不是最新的解决
- jQuery_02 快速入门 $作用和方法
- 2019年:两成开发者月薪超1.7万,算法工程师最紧缺
- Pikachu靶场之越权漏洞详解
- ZZULIOJ:1071: 分解质因子
- 史上第一张黑洞真身照片终于问世——原来黑洞不是黑的...
- matlab怎么将背景颜色换为白色,hypermesh将背景颜色设置为白色的方法
- halcon学习地址