成都信息工程大学天梯赛 L2-2 不要刁难我们了
赛时板子没写对,原因就是标记数组的位置放错了,放到了while外面,导致这样距离数组是不会更新的,板子还是要自己多写少看
#include <bits/stdc++.h>
#define int long long
using namespace std;
using pii = pair<int, int>;
using psc = pair<string, char>;
int n,m;
int st,ed;
int mes[200005];
int road[200005];
struct node{
int v;
int w;
};
vector<node>basis[200005];
int dis[200005];
int vis[200005];
void dijkstra(int x)
{
for(int i=1;i<=n;i++) dis[i]=1e9;
priority_queue<pii>q;
q.push({0,x});
dis[x]=0;
road[x]=1;
while(q.size()){
auto [ds,now]=q.top();
q.pop();
if(vis[now]) continue;//标记数组应放在这里而不是外面
vis[now]=1;
for(auto [v,w]:basis[now]){
if(dis[v]>dis[now]+w)
{
dis[v]=dis[now]+w;
road[v]=road[now];//注意这个路径数量的更新
q.push({-dis[v],v});
}else if(dis[v]==dis[now]+w){
road[v]+=road[now];//注意这个
//这里不要在放到队列里 否则路径会变多
}
}
}
}
void solve() {
cin>>n>>m;
cin>>st>>ed;
for(int i=1;i<=n;i++) cin>>mes[i];
for(int i=0;i<m;i++)
{
int u,v,w;
cin>>u>>v>>w;
basis[u].push_back({v,w+mes[v]});//直接这里加进去就可以 省的每次还要加
basis[v].push_back({u,w+mes[u]});
}
dijkstra(st);
cout<<dis[ed]<<"\n"<<road[ed];
}
signed main() {
int t = 1;
ios::sync_with_stdio(0), cin.tie(0);
// cin>>t;
while (t--) solve();
return 0;
}
成都信息工程大学天梯赛 L2-2 不要刁难我们了的更多相关文章
- CCCC 成都信息工程大学游记
晚上刷智障25人本,刷到深夜四点,然后迷迷糊糊8点钟起床上车睡觉,然后就到了信息工程大学. 然后开始抢衣服,抢完衣服就开始拍照. 对了,这个学校看了下地图,好小呀,不过妹子好多呀. 然后就被老师带进机 ...
- 成都信息工程大学第八届校赛 H J 题解
H. Bang Bang Keli Ba 题目大意 给定数组 \(a\) ,构造递增序列 \(b\) 和递减序列 \(c\) 且 \(a_i=b_i+c_i\) . 题解 下面证明解的存在性,存在性证 ...
- SycSec成都信息工程大学2019CTF-前五道WEB题writeup
一.WEB (1)一起来撸猫 flag藏在标签的注释内 <!--这是注释--> (2)你看见过我的菜刀么 eval漏洞 利用蚁剑连接 连接密码就是要post传的参数 连接成功后在网站根目 ...
- PTA天梯赛L2
L2-001 紧急救援 题意:就是给你一张n<500的图:让你求最短路径,最短路条数,以及路径: 做法,先用dijkstra求最短路,然后dfs找最短路条数,以及点权的最大值: 一般dfs不就可 ...
- 第四届CCCC团体程序设计天梯赛 后记
一不小心又翻车了,第二次痛失200分 1.开局7分钟A了L2-3,一看榜已经有七个大兄弟排在前面了,翻车 * 1 2.把L1-3 A了18分,留了两分准备抢顽强拼搏奖,最后五秒钟把题过了,万万没想到还 ...
- 团体程序设计天梯赛(CCCC) L3009 长城 方法证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 【CCCC天梯赛决赛】
cccc的天梯赛决赛,水题一样的水,中档题以上的还是没做出来.补了一下题,觉得其实也不是很难,主要是练的少. L2-1:红色预警 并查集 我做的时候想不到并查集,想到了也不一定做的出来,都是其实不难. ...
- 记第一届 CCCC-团体程序设计天梯赛决赛 参赛
其他都没什么,上午报道,下午比赛两个半小时,最后139分 但四我超遗憾的是,最后在做L3-1二叉搜索树,因为看到有辣么多人做出来,可是我没做出来啊 比赛结束后看了看其他两道当场吐血,L3-3直捣黄龙不 ...
- L1-049 天梯赛座位分配
L1-049 天梯赛座位分配 (20 分) 天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情.为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i ...
- 团体程序设计天梯赛(CCCC) L3021 神坛 的一些错误做法(目前网上的方法没一个是对的) 和 一些想法
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
随机推荐
- w3cschool-Nginx 使用手册
https://www.w3cschool.cn/nginxsysc/ Nginx 使用手册 手册简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 ...
- 1. Calcite元数据创建
1. 简介 Calcite 是一款来自 Apache 的开源动态数据管理框架,核心功能是提供 SQL 查询解析.优化及执行等基础能力,以灵活支持多种数据源,广泛应用于各类数据处理系统.以下从其功能特性 ...
- uni-app使用阿里矢量字体图标
在app.vue下,引入 <style> @font-face { font-family: 'iconfont'; /* project id 1951514 */ src: url(' ...
- 天翼云弹性高性能计算Portal简介
本文分享自天翼云开发者社区<天翼云弹性高性能计算Portal简介>,作者:小燕同学 1.平台概述 天翼云官网已上线公有云弹性高性能计算(EHPC)产品,公有云EHPC产品主要由管理员控制, ...
- mac支持rar解压缩
一.下载 下载macOS版本:RAR 5.71 for macOS (64 bit) 二.安装 1.双击解压刚才下载的rarosx-5.7.1.tar,使用终端进入刚才解压的文件夹目录下cd /Use ...
- [虚拟化/Docker] Docker Desktop 安装与使用
0 序:DeepSeek 等AI大模型在Windows的私有化部署 DeepSeek 等AI大模型在Windows的私有化部署,最流行的开源AI终端应用----Dify,依赖于 Docker 环境.由 ...
- WPF IValueConverter and IMultiValueConverter
1. 实现DataGrid column的显示和隐藏功能: (1). 定义ContextMenu ,该ContextMenu仅可使用于DataGrid的DataGridColumnHeader: &l ...
- 《<吕氏春秋> 刘本》
<<吕氏春秋> 刘本>(卷三) 编者 刘昱合 其他版本 <吕氏春秋>(卷一) <吕氏春秋>(卷二) <<吕氏春秋> 全本>(卷三 ...
- pagehelper分页查询的一个坑,明明下一页没有数据了却还是返回了数据
pagehelper分页查询的一个坑,明明下一页没有数据了却还是返回了数据 解决:关闭这该死的合理化,如下配置: pagehelper:# helperDialect: mysql reasonabl ...
- Typecho美化之网页底部增加好久不见的底部样式
好久不见之本站同款网站底部样式,效果见本站. 1.修改footer.php首先,在页脚文件footer.php文件的最下面放入以下代码: <!-- 好久不见 --> <div cla ...