HDU 2544 最短路 SPFA 鄰接表 模板

2021-06-26 12:05:34 字數 1287 閱讀 9646

problem description

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

input

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

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

output

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

sample input

2 1

1 2 3

3 31 2 5

2 3 5

3 1 2

0 0

sample output

3

2**:#include#include#include#define maxx 99999999

#includeusing namespace std;

struct nodeedge[20005];

int vis[505],dis[505];

int next[20005];

int m,n;

int tot;

void addedge(int u,int v,int w)

}if(t==1)

return;

edge[tot].to=v;

edge[tot].w=w;

edge[tot].pre=next[u];// 鄰接表的儲存

next[u]=tot++; //

edge[tot].to=u; //構造反向邊

edge[tot].w=w;

edge[tot].pre=next[v];

next[v]=tot++;

return;

}int spfa()

dis[1]=0;

vis[1]=1;

q.push(1);

while(!q.empty())}}

}return dis[m];

}int main()

int s=spfa();

cout<

HDU 2544 最短路 最短路

最近複習了最短路徑的演算法,就寫了4個版本的測試。正好是模板題,就果斷a之。dijkstar版本 include include include include include include includeusing namespace std define n 110 define max 99...

hdu 2544 最短路(最短路)

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

HDU2544最短路(最短路徑)

description 在每年的校賽裡,所有進入決賽的同學都會獲得一件很漂亮的t shirt。但是每當我們的工作人員把上百件的衣服從商店運回到賽場的時候,卻是非常累的!所以現在他們想要尋找最短的從商店到賽場的路線,你可以幫助他們嗎?input 輸入包括多組資料。每組資料第一行是兩個整數n m n 1...