第一行輸入兩個整數\n,m(\1≤n≤1,000,1≤m≤5,000),分別代表城市個數和道路總數。接下來輸入 m 行,每行輸入三個數字 a,b,c(1≤a,b≤n,1≤c≤200),分別代表道路的起點和道路的終點,以及蒜頭君騎車通過這條道路需要花費的時間。保證輸入的圖是連通的。
輸出格式
輸出一行,輸出乙個整數,輸出蒜頭君完成比賽需要的最少時間。
樣例輸入
5 6
1 2 2
2 3 3
2 5 5
3 4 2
3 5 1
4 5 1
樣例輸出
6模板題。
**:
#include#includeusing namespace std;
const int max_n=10000;
const int max_m=100000;
const int inf=0x3f3f3f3f;
struct edge
e[max_n];
int p[max_n], eid; //「鏈式前向星」儲存的一些引數
int n; //有多少個結點
void mapinit()
void insert(int u,int v,int w)
void insert2(int u,int v,int w)
typedef pairpii;
set> min_heap;
int dist[max_n];
bool vst[max_n];
bool dijkstra(int s)
} } return true;
}int main()
//因為題意保證是連通的,所以dijkstra(1)返回的一定是true,反正能到終點的。
dijkstra(1);
cout
}
dijkstra和dijkstra堆優化模板
之前qaq一直沒有準備堆優化模板,本例以pat a1003為例,整理dijkstra和dijkstra堆優化模板 我們可以發現該篇幅找最小值部分是使用量乙個for迴圈 include include using namespace std int n,m,c1,c2 int edge 510 510...
題解 騎車比賽
描述 小信準備去參加騎車比賽,比賽在 n 個城市間進行,編號從 1 到 n。選手們都從城市 1 出發,終點在城市 n。已知城市間有 m 條道路,每條道路連線兩個城市,注意道路是雙向的。現在小信知道了他經過每條道路需要花費的時間,他想請你幫他計算一下,他這次比賽最少需要花多少時間完成。輸入第一行輸入兩...
dijkstra 堆優化 路徑
別人給的模板,所以不知道鏈結 include include include include include using namespace std define maxn 1020 define inf 0x3f typedef long long ll o nlogn typedef pair ...