当前位置: 首页 > news >正文

[牛客]公交线路(dijkstra+链式前向星)

登录—专业IT笔试面试备考平台_牛客网

#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
typedef long long ll;
const int N=1e6+5,M=1e8+5;
int cnt=0,head[N];
int n,m,s,t;
struct node
{int v,w,next;
}edge[M];
void addedge(int u,int v,int w)
{cnt++;edge[cnt].v=v;edge[cnt].w=w;edge[cnt].next=head[u];head[u]=cnt;
}
bool vis[N];
int dis[N];
void dijkstra()
{for(int i=1;i<=n;i++)dis[i]=INT_MAX;int curr=s;dis[s]=0;int minn;while(!vis[curr]){vis[curr]=true;for(int i=head[curr];i>0;i=edge[i].next){if(!vis[edge[i].v] && dis[edge[i].v]>dis[curr]+edge[i].w){dis[edge[i].v]=dis[curr]+edge[i].w;}}minn=INT_MAX;for(int i=1;i<=n;i++){if(!vis[i] && minn>dis[i]){minn=dis[i];curr=i;}}}
}
int main()
{cin>>n>>m>>s>>t;for(int i=0;i<m;i++){int a,b,v;cin>>a>>b>>v;addedge(a,b,v),addedge(b,a,v);}dijkstra();if(!vis[t])cout<<-1;else cout<<dis[t];
}

http://www.lryc.cn/news/527819.html

相关文章:

  • SpringAI 搭建智能体(二):搭建客服系统智能体
  • 豆包MarsCode:前缀和计算问题
  • 【16届蓝桥杯寒假刷题营】第2期DAY5
  • Python 合并 Excel 单元格
  • [EAI-023] FAST: Efficient Action Tokenization for Vision-Language-Action Models
  • 解锁微服务:五大进阶业务场景深度剖析
  • java入门笔记基础语法篇(4)
  • java语法学习
  • 装饰SpringMVC的适配器实现响应自动包装
  • 【Rust自学】15.4. Drop trait:告别手动清理,释放即安全
  • 【算法】【归并排序】AcWing 算法基础 788. 逆序对的数量
  • 一个局域网通过NAT访问另一个地址重叠的局域网(IP方式访问)
  • 05-机器学习-数据标注
  • LQ1052 Fibonacci斐波那契数列
  • AWTK 骨骼动画控件发布
  • 分库分表后如何进行join操作
  • arkui-x 前端布局编码模板
  • 宝塔面板SSL加密访问设置教程
  • c++ set/multiset 容器
  • 前部分知识复习02
  • 开发环境搭建-3:配置 JavaScript 开发环境 (fnm+ nodejs + pnpm + nrm)
  • kotlin内联函数——let,run,apply,also,with的区别
  • 【深度学习|DenseNet-121】Densely Connected Convolutional Networks内部结构和参数设置
  • 数据结构与算法-要点整理
  • Fort Firewall:全方位守护网络安全
  • Nginx实战技巧(Practical Tips for nginx)
  • YOLOv8:目标检测与实时应用的前沿探索
  • 解锁数字经济新动能:探寻 Web3 核心价值
  • Lua 环境的安装
  • Object类(2)