Dijk入門(杭電2544題)

2022-05-01 22:42:18 字數 632 閱讀 6765

#include#include

using

namespace

std;

#define inf 0x3f3f3f3f

intn,m;

int map[105][105

];int vis[105

];int stemp[105

];int

dijk()}}

if(vis[i]&&min+stemp[i]//

比較每個點的最小擴充套件點,選出總距離最短的標記該點和對應的擴充套件點

flag1=min;

countx=i;

county=index2;}}

//cout<<"!"<< flag1<<' '一但往前走就不存在回溯

stemp[county]=flag1+stemp[countx];//

記錄每乙個已選的路程

vis[county]=1

; flag1=inf;//

初始化第乙個點滿足條件

countx=0

; }

return

stemp[n];

}int

main()

cout

}}

杭電 2544 最短路

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

杭電2544 最短路徑

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

最短路徑 Dijkstra演算法 杭電2544

開始因為錯寫了m和n,runtime error了幾次,用dijkstra演算法時,迴圈中應該是點的數目,也就是n,而不是m 注意該題是無向圖 include includeusing namespace std define data 100000000 注意取值,100000000才可以通過,其...