HDU 1874 暢通工程續 dijkstra

2021-08-03 11:58:58 字數 601 閱讀 5653

坑點比較多

1. 某兩點之間可能有多條通路,在跑dij時需要用距離最小的算。

2. 當起點和重點相等的時候,距離為0

3. 點的編號從0開始。

#include 

#define nmax 210

using

namespace

std;

int mp[nmax][nmax];

int dis[nmax];

bool visit[nmax];

int inf = 1e8;

int n,m;

void dij(int s)

int mini = inf;

for(int j = 0; jif(!visit[j] && dis[j] < mini)

}visit[cur] = true;

}}int main()

scanf("%d %d",&sta,&end);

dij(sta);

if(sta == end)else

if(dis[end] == inf)else

}return

0;}

hdu 1874 暢通工程續

題目 就是裸的單源最短路。做的時候還是遇到了一些錯誤。比如題目上說的,每次要從乙個城鎮到另乙個城鎮時,都有許多種道路方案可以選擇,而某些方案要比另一些方案行走的距離要短很多。應該在輸入的時候就要更新a b的最短距離。還有一開始開了個n 0x7fffffff 這種題肯定是不行的。因為這個數和其他數相加...

HDU 1874 暢通工程續

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

HDU 1874 暢通工程續

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