佈線問題 38 最小生成樹 prim

2021-07-05 06:32:02 字數 1060 閱讀 8083

時間限制:

1000 ms | 記憶體限制:

65535 kb

難度:4

描述

南陽理工學院要進行用電線路改造,現在校長要求設計師設計出一種佈線方式,該佈線方式需要滿足以下條件:

1、把所有的樓都供上電。

2、所用電線花費最少

輸入第一行是乙個整數n表示有n組測試資料。(n<5)

每組測試資料的第一行是兩個整數v,e.

v表示學校裡樓的總個數(v<=500)

隨後的e行裡,每行有三個整數a,b,c表示a與b之間如果建鋪設線路花費為c(c<=100)。(哪兩棟樓間如果沒有指明花費,則表示這兩棟樓直接連通需要費用太大或者不可能連通)

隨後的1行裡,有v個整數,其中第i個數表示從第i號樓接線到外界供電設施所需要的費用。( 0

輸出每組測試資料輸出乙個正整數,表示鋪設滿足校長要求的線路的最小花費。

樣例輸入

1

4 61 2 10

2 3 10

3 1 10

1 4 1

2 4 1

3 4 1

1 3 5 6

樣例輸出

4

#include#include#include#includeusing namespace std;

#define inf 0x3f3f3f3f

#define min(a,b) a>b?b:a

int n,m;

int map[510][510],dis[510],vis[510],s[510];

void prim(int x)

} printf("%d\n",sum+s[1]);

}int main()

int mm=inf;

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

scanf("%d",&s[i]);

sort(s+1,s+n+1);

prim(1);

} return 0;

}

最優佈線問題 prim 最小生成樹

description 學校有n臺計算機,現要將它們用資料線連線起來。兩台計算機被連線是指它們之間有資料線連線。由於計算機所處的位置不同,因此不同的兩台計算機的連線費用往往是不同的。為了節省費用,一台計算機可以間接的通過若干臺計算機 作為中轉 來實現與另一台計算機的連線。現在由你負責連線這些計算機,...

NYOJ 38 佈線問題 最小生成樹

時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 南陽理工學院要進行用電線路改造,現在校長要求設計師設計出一種佈線方式,該佈線方式需要滿足以下條件 1 把所有的樓都供上電。2 所用電線花費最少 輸入第一行是乙個整數n表示有n組測試資料。n 5 每組測試資料的第一行是兩個整數v,...

HDOJ 題目38 佈線問題(最小生成樹)

時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 南陽理工學院要進行用電線路改造,現在校長要求設計師設計出一種佈線方式,該佈線方式需要滿足以下條件 1 把所有的樓都供上電。2 所用電線花費最少 輸入第一行是乙個整數n表示有n組測試資料。n 5 每組測試資料的第一行是兩個整數v,...