牛客网 牛客小白月赛2 H.武-最短路(Dijkstra)
H.武
链接:https://www.nowcoder.com/acm/contest/86/H
这个题写的有点想发脾气,自己的板子垃圾了,这个题要用优先队列优化版的迪杰斯特拉的板子才可以过,但是自己太智障了,段错误,编译错误,段错误,内存超限,运行超时,段错误,a了。
不想说什么了,简直蠢到家了。
代码(学长的板子就是好):
1 //H-学长的模板2 #include<iostream>3 #include<cstdio>4 #include<cstring>5 #include<cmath>6 #include<cstdlib>7 #include<algorithm>8 #include<queue>9 #include<vector> 10 #include<stack> 11 using namespace std; 12 typedef long long ll; 13 const int maxn=1e5+10; 14 const double eps=1e-7; 15 const int N=1e5+10; 16 const int INF=0x3f3f3f3f; 17 18 19 int head[N*2], nex[N*2], to[N*2], val[N*2], dis[N], vis[N], tot; 20 21 struct cmp{ 22 bool operator()(int a,int b) { 23 return dis[a]>dis[b]; 24 } 25 }; 26 27 priority_queue<int, vector<int>, cmp > Q; 28 29 void init() { 30 tot = 0; 31 while(!Q.empty()) Q.pop(); 32 memset(head, -1, sizeof(head)); 33 memset(dis, 127, sizeof(dis)); 34 memset(vis, 0, sizeof(vis)); 35 } 36 37 void addedge(int u, int v, int w) { 38 to[tot] = v; 39 nex[tot] = head[u]; 40 val[tot] = w; 41 head[u] = tot++; 42 } 43 44 void Dijkstra(int S) { 45 Q.push(S); 46 dis[S] = 0, vis[S] = 1; 47 while(!Q.empty()) { 48 int u = Q.top(); 49 Q.pop(); 50 for(int i=head[u]; i!=-1; i=nex[i]) { 51 int v = to[i]; 52 if(!vis[v] && dis[u]+val[i] < dis[v]) { 53 dis[v] = dis[u]+val[i]; 54 Q.push(v), vis[v] = 1; 55 } 56 } 57 } 58 } 59 60 int main(){ 61 int n,p,k; 62 ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); 63 init(); 64 cin>>n>>p>>k; 65 for(int i=0;i<n-1;i++){ 66 int u,v,w; 67 cin>>u>>v>>w; 68 addedge(u,v,w); 69 addedge(v,u,w); 70 } 71 Dijkstra(p); 72 sort(dis+1,dis+1+n); 73 cout<<dis[k+1]<<endl; 74 }
就先这样吧,F,I,J比赛的时候没写出来也没时间了,还没补,F是搜索+博弈,其他两个还没看,补出来再来粘代码,我圆润的离开了(gun)。
转载于:https://www.cnblogs.com/ZERO-/p/9729059.html
牛客网 牛客小白月赛2 H.武-最短路(Dijkstra)相关推荐
- 牛客小白月赛2 H.武
牛客小白月赛2 H.武 题目链接 题目描述 其次,Sεlιнα(Selina) 要进行体力比武竞赛. 在 Sεlιнα 所在的城市,有 NNN 个街区,编号为 1∼N1 \sim N1∼N,总共有 N ...
- 牛客网 牛客小白月赛1 H.写真がとどいています
H.写真がとどいています 链接:https://www.nowcoder.com/acm/contest/85/H 来源:牛客网 这个题数乱了,导致wa了好几次. 特别弱智,从A开始往上,就是A,B, ...
- 牛客网 牛客小白月赛1 C.分元宵-快速幂
C.分元宵 链接:https://www.nowcoder.com/acm/contest/85/C 来源:牛客网 这个题就是快速幂,注意特判,一开始忘了特判,wa了一发. 代码: 1 #includ ...
- 牛客小白月赛6 H 挖沟
H 挖沟 题目: 链接:https://www.nowcoder.com/acm/contest/136/H 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144 ...
- 牛客小白月赛12 H 华华和月月种树 (离线dfs序+线段树)
链接:https://ac.nowcoder.com/acm/contest/392/H 来源:牛客网 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 131072K,其他语言2621 ...
- 【Nowcoder】牛客小白月赛26 H 保卫家园 | 贪心、扫描线
emmm-考试周一天一套小白月赛保持手感- 别问为什么,怕被太难的题卡的挂科- 本来不想写什么题解,不过这题确实有妙处,就记录一下吧 题目大意: 为了抵御深渊的蔓延,被深渊毁掉家园的人们组建法兰不死队 ...
- 牛客网 牛客练习赛13 A.幸运数字Ⅰ
A.幸运数字Ⅰ 链接:https://www.nowcoder.com/acm/contest/70/A 来源:牛客网 水题. 代码: 1 #include<iostream> 2 #in ...
- 牛客网 牛客练习赛13 C.幸运数字Ⅲ-思维
C.幸运数字Ⅲ 链接:https://www.nowcoder.com/acm/contest/70/C 来源:牛客网 这个题447和477是特殊的,其他的就没什么了. 代码: 1 #include& ...
- 牛客网 牛客小白月赛2 G.文
G.文 链接:https://www.nowcoder.com/acm/contest/86/G 这个题wa了一发,有点智障,浮点数,式子里面要*1.0,忘了,然后wa了,改了就过了(脑子有坑) 代码 ...
- 【牛客网】小白月赛16 H 小阳的贝壳
题目链接:https://ac.nowcoder.com/acm/contest/949/H 题意:求区间gcd,带修改. 题解:线段树gcd,差分,单点修改,区间询问.注意gcd满足的性质,可以使其 ...
最新文章
- 全球买全球卖 国际化的技术挑战
- UML解惑:图说UML中的六大关系--转
- Python中有用的字符串方法
- 蓝牙最新版本6.0_低功耗蓝牙的有趣事实
- 码匠编程:7 个令人兴奋的 JavaScript 新特性
- simpledateformat格式_大厂都是怎么用Java8代替SimpleDateFormat?
- ICRoute 语音识别芯片/声控芯片 用声音去沟通 LD332X系列语音识别芯片
- jwt 长度_跟我一起学.NetCore之WebApi接口裸奔有风险(Jwt)
- uva 11892 - ENimEN(推理)
- linux 内核同步机制之complete
- sqlserver连接问题圣经
- 一元函数积分学的概念与性质
- 蚂蚁金服java研发面经_蚂蚁金服Java研发岗实习内推面经
- 关于Efficient Subgraph Matching by Postponing Cartesian的批注
- html彩色条,html5 canvas彩色流动线条动画特效
- 亚太融媒+ | APEC数据+:“鲸确数集”环保熊猫“小保保”2022拜年 | APEC产业+
- 想看两不厌,笑我太疯癫
- AI绘图实战(十):制作线稿矢量图之包头巾的女人,画矢量图/生成矢量图/导出矢量图/直出svg/vector studio插件使用 | Stable Diffusion成为设计师生产力工具
- 179	Largest Number
- 空间注意力机制和通道注意力机制详解