HDOJ1874 暢通工程續

2022-03-06 23:48:56 字數 703 閱讀 1479

題目鏈結

求單源最短路的題,因為邊權非負,所以可以用dijkstra。這題有一點需要注意的地方是有重邊,在讀資料時取較小的即可。

view code

1 #include 2 #include 

3#define min(a,b) ((a)

4#define n 200

5#define inf 2000000

6int

g[n][n];

7int

dist[n];

8int

n,m;

9char

vis[n];

10void dijkstra(int

u)1122}

23int

main()

2432

for(i=0;i"

%d%d%d

",&a,&b,&d),g[a][b]=g[b][a]=min(d,g[a][b]);

33 scanf("

%d%d

",&s,&t);

34dijkstra(s);

35if(dist[t]"

%d\n

",dist[t]);

36else printf("

-1\n");

37}38return0;

39 }

hdoj1874 暢通工程續

dijsktra演算法 偽 清除所有標記 d 0 0,其他d i intmax for 1到n dijkstra演算法的應用 include using namespace std const int max 201 const int intmax 10000000 int map max max...

HDOJ 1874 暢通工程續 Floyd

題意 求兩村之間最短距離。思路 赤裸裸的floyd。include define maxn 222 define inf 2139062143 int map maxn maxn n void floyd int main int m,a,b,c while scanf d d n,m 2 int ...

1874暢通工程續 Dikstra Floyd

problem description 某省自從實行了很多年的暢通工程計畫後,終於修建了很多路。不過路多了也不好,每次要從乙個城鎮到另乙個城鎮時,都有許多種道路方案可以選擇,而某些方案要比另一些方案行走的距離要短很多。這讓行人很困擾。現在,已知起點和終點,請你計算出要從起點到終點,最短需要行走多少距...