演算法題 最短路徑 03 最短路

2021-10-02 11:31:41 字數 1141 閱讀 3404

在每年的校賽裡,所有進入決賽的同學都會獲得一件很漂亮的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 11 2 3

3 31 2 5

2 3 5

3 1 2

0 0sample output32

模板題:用dijkstra演算法求解即可

#include#include#includeusing namespace std;

#define inf 99999999

#define mm 1005

int a[mm][mm], dis[mm], book[mm];

int n, t, t1, t2, t3, min1, flag;

int main()

for (int i = 1; i <= n; i++)

for (int j = 1; j <= n; j++)

if (i == j) a[i][j] = 0;

else a[i][j] = inf;

for (int i = 0; it3)

a[t1][t2] = a[t2][t1] = t3;

}memset(dis, 0, sizeof(dis));

for (int i = 1; i <= n; i++)

book[1] = 1;

for (int i = 1; i <= n; i++)

}printf("%d\n", dis[n]);

} return 0;

}

最短路徑演算法 最短路

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

Codeup最短路徑 最短路徑

n個城市,標號從0到n 1,m條道路,第k條道路 k從0開始 的長度為2 k,求編號為0的城市到其他城市的最短距離。第一行兩個正整數n 2 n 100 m m 500 表示有n個城市,m條道路,接下來m行兩個整數,表示相連的兩個城市的編號。n 1行,表示0號城市到其他城市的最短路,如果無法到達,輸出...

最短路 最短路徑問題

題目描述 平面上有n個點 n 100 每個點的座標均在 10000 10000之間。其中的一些點之間有連線。若有連線,則表示可從乙個點到達另乙個點,即兩點間有通路,通路的距離為兩點直線的距離。現在的任務是找出從一點到另一點之間的最短路徑。input 共有n m 3行,其中 第一行為乙個整數n。第2行...