CCF 2017 03 4 地鐵修建

2021-08-07 07:38:55 字數 737 閱讀 3174

大致思路:

最短路變形,建立dis陣列。不過dis[i]儲存的不是到達i點的最短路徑,而是能到達i點的所有路徑中每條路徑中最長的天數的最小值。(有點繞腦,就像樣例說明一樣,1到6有兩條路徑,其中一條路徑要花6天完成(完成這條路的時間肯定是修這條

路徑的所有隧道花費時間最長的

),另一條要7天,那麼答案就是6天。)

所以當用spfa進行點鬆弛時,有:dis[to]=max(dis[top],cost)

**:

#include#include#include#include#include#include#define inf 99999999

using namespace std;

int dis[200005];

int vis[200005];

struct lu

};vectorv[200005];

int spfa(int n)

dis[1]=0;

queueq;

q.push(1);

vis[1]=1;

while(!q.empty())}}

}return dis[n];

}int main()

int a,b,c;

for(int i=0; i

CCF201703 4 地鐵修建 (100分)

試題編號 201703 4 試題名稱 地鐵修建 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 a市有n個交通樞紐,其中1號和n號非常重要,為了加強運輸能力,a市決定在1號到n號樞紐間修建一條地鐵。地鐵由很多段隧道組成,每段隧道連線兩個交通樞紐。經過勘探,有m段隧道作為候選,兩個...

CCF認證 2017 03 地鐵修建 最短路變形

題目 試題編號 201703 4 試題名稱 地鐵修建 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 a市有n個交通樞紐,其中1號和n號非常重要,為了加強運輸能力,a市決定在1號到n號樞紐間修建一條地鐵。地鐵由很多段隧道組成,每段隧道連線兩個交通樞紐。經過勘探,有m段隧道作為候選...

地鐵修建 CCF CSP 201703 4

試題編號 201703 4 試題名稱 地鐵修建 時間限制 1.0s 記憶體限制 256.0mb a市有n個交通樞紐,其中1號和n號非常重要,為了加強運輸能力,a市決定在1號到n號樞紐間修建一條地鐵。地鐵由很多段隧道組成,每段隧道連線兩個交通樞紐。經過勘探,有m段隧道作為候選,兩個交通樞紐之間最多只有...