基礎最短路(模板 bellman ford)

2022-08-15 08:12:20 字數 1005 閱讀 1327

description

在每年的校賽裡,所有進入決賽的同學都會獲得一件很漂亮的t-shirt。但是每當我們的工作人員把上百件的衣服從商店運回到賽場的時候,卻是非常累的!所以現在他們想要尋找最短的從商店到賽場的路線,你可以幫助他們嗎?

input

輸入包括多組資料。每組資料第一行是兩個整數n、m(n<=100,m<=10000),n表示成都的大街上有幾個路口,標號為1的路口是商 店所在地,標號為n的路口是賽場所在地,m則表示在成都有幾條路。n=m=0表示輸入結束。接下來m行,每行包括3個整數a,b,c(1& lt;=a,b<=n,1<=c<=1000),表示在路口a與路口b之間有一條路,我們的工作人員需要c分鐘的時間走過這條路。

輸入保證至少存在1條商店到賽場的路線。

output

對於每組輸入,輸出一行,表示工作人員從商店走到賽場的最短時間

sample input

2 11 2 3

3 31 2 5

2 3 5

3 1 2

0 0

sample output32

解析:最短路,模板題。

**如下:

1 # include2 # include3 # include4 # include5

using

namespace

std;

6const

int inf=1

<<30;7

int mp[105][105

],n,m;

8int dis[105];9

void

bellman_ford()

1024}25

}26}27 printf("

%d\n

",dis[n]);28}

29int

main()

3042

bellman_ford();43}

44return0;

45 }

view code

最短路模板

1.dijkstra演算法 演算法思想 從某乙個點開始,找與它距離最近的乙個點,然後更新所有點到這條路徑的距離,然後再次選取乙個距離上乙個點路徑最短的點,將其加入路徑,以此進行,直到求出起點到所有點的最短距離.注意 權值不能為負,如圖 1到3的距離應該是零,但這裡結果為一 1 鄰接矩陣 複雜度 o ...

最短路模板

週六週日tyvj上有模擬賽 順便逃了周練 霧 複習了一下圖論裡的基本演算法 彷彿第一次寫最短路的手生 寫的太少了 orz dijkstra include define maxn 10001 define maxm 300001 using namespace std template void r...

最短路模板

include include include include include include define inf 0x3f3f3f3f using namespace std const int maxn 105 int dis maxn pre maxn struct edge 邊 edge ...