最小生成樹ii
time limit:10000ms memory limit:65536k
total submit:314 accepted:142
case time limit:1000ms
description
農民約翰被選為他們鎮的鎮長!他其中乙個競選承諾就是在鎮上建立起網際網路,並連線到所有的農場。當然,他需要你的幫助。約翰已經給他的農場安排了一條高速的網路線路,他想把這條線路共享給其他農場。為了用最小的消費,他想鋪設最短的光纖去連線所有的農場。你將得到乙份各農場之間連線費用的列表,你必須找出能連線所有農場並所用光纖最短的方案。每兩個農場間的距離不會超過100000
input
第一行: 農場的個數,n(3<=n<=5000)。
第二行..結尾: 後來的行包含了乙個n*n的矩陣,表示每個農場之間的距離。理論上,他們是n行,每行由n個用空格分隔的數組成,實際上,他們限制在80個字元,因此,某些行會緊接著另一些行。當然,對角線將會是0,因為不會有線路從第i個農場到它本身。
output
只有乙個輸出,其中包含連線到每個農場的光纖的最小長度。
sample input
40 4 9 21
4 0 8 17
9 8 0 16
21 17 16 0
sample output
28
source
usaco改編
var//詳見上一條部落格,只改了陣列大小(一下水4題的快感~)a:array[0..5000,0..5000]of longint;
l:array[0..5000]of longint;
v:array[0..5000]of boolean;
n,i,j,k,ans:longint;
begin
readln(n);
for i:=1 to n do
begin
for j:=1 to n do read(a[i,j]);
readln;
end;
fillchar(v,sizeof(v),true);
fillchar(l,sizeof(l),$7f);
l[1]:=0;
for i:=1 to n do
begin
k:=0;
for j:=1 to n do
if (l[j]
SSL ZYC 1764 最小生成樹
題目大意 求出最小生成樹。思路 這道題有兩種方法 1 最小生成樹 2 並查集 最小生成樹 資料n 5000,簡直就是dij的模版。並查集 以兩點之間的距離從小到大排序,再利用貪心思想,如果father i father j 那麼將i的父親指向j,再用sum加上這兩點之間的距離,加上一點優化即可ac。...
SSL ZYC 1764 最小生成樹
題目大意 求出最小生成樹。思路 這道題有兩種方法 1 最小生成樹 2 並查集 最小生成樹 資料n 5000,簡直就是dij的模版。並查集 以兩點之間的距離從小到大排序,再利用貪心思想,如果father i father j 那麼將i的父親指向j,再用sum加上這兩點之間的距離,加上一點優化即可ac。...
ssl2779 Heatwave 最小生成樹 倍增
給你n個點的無向連通圖,圖中有m條邊,第j條邊的長度為 d j.現在有 k個詢問。每個詢問的格式是 a b,表示詢問從a點走到b點的所有路徑中,最長的邊最小值是多少?要求u,v兩點中的最長邊的最小值,設該值為ans,那麼,把權小於等於ans的邊組成的圖中,u,v一定是連通的。也就是說,對於乙個圖,求...