複習 最小生成樹 最優佈線問題

2021-08-09 06:01:53 字數 1411 閱讀 1105

題目描述

學校有 n 臺計算機,為了方便資料傳輸,現要將它們用資料線連線起來。兩台計算機被連線是指它們間有資料線連線。由於計算機所處的位置不同,因此不同的兩台計算機的連線費用往往是不同的。

當然,如果將任意兩台計算機都用資料線連線,費用將是相當龐大的。為了節省費用,我們採用資料的間接傳輸手段,即一台計算機可以間接的通過若干臺計算機(作為中轉)來實現與另一台計算機的連線。

現在由你負責連線這些計算機,任務是使任意兩台計算機都連通(不管是直接的或間接的)。

輸入格式

輸入檔案第一行為整數 n(2<=n<=100),表示計算機的數目。此後的 n 行,每行 n 個整數。第 x+1 行 y 列的整數表示直接連線第 x 臺計算機和第 y 臺計算機的費用。

輸出格式

輸出檔案是乙個整數,表示最小的連線費用。

樣例資料

輸入

3

0 1 2

1 0 1

2 1 0

輸出

備註

【樣例說明】

表示連線 1和2, 2和3,費用為2 。

分析:最小生成樹模板

**

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

int getint()

for(;isdigit(ch);ch=getchar())

sum=(sum<<3)+(sum<<1)+ch-48;

return sum*f;

}struct nodebian[10010];

int n,cost,x,y,cnt,ans,fa[10010];

bool comp(const node &a,const node &b)

int main()

sort(bian+1,bian+cnt+1,comp);

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

fa[i]=i;

for(int i=1;i<=cnt;++i)

}cout

<'\n';

return

0;}

本題結。

最小生成樹 最優佈線問題

題目描述 學校有n臺計算機,為了方便資料傳輸,現要將它們用資料線連線起來。兩台計算機被連線是指它們之間有資料線連線。由於計算機所處的位置不同,因此不同的兩台計算機的連線費用往往是不同的。當然,如果將任意兩台計算機都用資料線連線,費用將是相當龐大的。為了節省費用,我們採用資料的間接傳輸手段,即一台計算...

最優佈線問題(最小生成樹)

description 學校有n臺計算機,為了方便資料傳輸,現要將它們用資料線連線起來。兩台計算機被連線是指它們之間有資料線連線。由於計算機所處的位置不同,因此不同的兩台計算機的連線費用往往是不同的。當然,如果將任意兩台計算機都用資料線連線,費用將是相當龐大的。為了節省費用,我們採用資料的間接傳輸手...

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

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