思路:建立乙個虛點層,題目等價於求虛點層起點到終點的最小花費。同一層邊花費b,虛點層到其他每層花費a。跑一邊dijkstra即可。
ac**:
#include
using
namespace std;
const
int n=
1e6+
5,inf=
0x3f3f3f3f
;struct edgee[n]
;int h[n]
,n,m,d[n]
,cnt=
1,st,ed,vis[n]
;struct node};
void
add(
int u,
int v,
int w)
; h[u]
=cnt++;}
void
dij())
;while
(q.size()
));}
}}intmain()
}dij()
;printf
(d[ed]
==inf?
"-1\n"
:"%d\n"
,d[ed]);
return0;
}
小雨坐地鐵
時間限制 c c 1秒,其他語言2秒 空間限制 c c 524288k,其他語言1048576k 64bit io format lld 題目描述 小雨所在的城市一共有 m 條地鐵線,分別標號為 1 號線,2 號線,m 號線。整個城市一共有 n 個車站,編號為 1 n 其中坐 i 號線需要花費 ai...
牛客演算法周周練3 C 小雨坐地鐵 分層最短路
思路 dp i j 表示到第 mathit i 個節點時在第 mathit j 個地鐵上的最小花費。然後 dijkstra 演算法跑最短路即可,轉移有 text 2 種情況 1 換到地鐵線路i 且走了乙個節點,cost a i b i 2 不換地鐵線路,繼續在第 mathit i 個地跌線路上走 c...
牛客小白月賽16 小雨坐地鐵 建虛點最短路
時間限制 c c 1秒,其他語言2秒 空間限制 c c 524288k,其他語言1048576k 64bit io format lld 小雨所在的城市一共有 mm 條地鐵線,分別標號為 1 號線,2 號線,m 號線。整個城市一共有 nn 個車站,編號為 1 n1 n 其中坐 i 號線需要花費 ai...