openjudge 叢林中的路

2021-07-08 16:47:23 字數 1396 閱讀 6481

總時間限制: 

1000ms 

記憶體限制: 

65536kb

描述

熱帶島嶼lagrishan的首領現在面臨乙個問題:幾年前,一批外援資金被用於維護村落之間的道路,但日益繁茂的叢林無情的侵蝕著村民的道路,導致道路維修開銷巨大,長老會不得不放棄部分道路的維護。上圖左側圖顯示的是正在使用道路的簡圖以及每條路每個月的維修費用(單位為aacms)。現在長老會需要提出一種方案,即需要保證村落之間都可以互相到達,又要將每個月的道路維修費用控制在最小。村子編號為從a到i。上圖右側顯示的方案最小維修開銷為216 aacms每月。

輸入輸入包含1~100個資料集,最後一行為0.每個資料集第一行為村落數目n, 1 < n < 27,依次用字母表的前n個字母標記。接下來有n-1行,每行的第乙個資料便是按字母順序排列的村子編號(不包括最後乙個村莊)。每個村莊後面的資料k代表該村莊通往編號在其之後的村莊的道路數目,如a 2 b 12 i 25,代表a村莊有2個編號在a之後的村莊和其相連。若k大於0,k後面會依次給出這k個村莊的編號以及各自到起始村莊的道路維修費用,如a 2 b 12 i 25,代表a和b之間道路維修費用為12, a和i之間道路維修費用為25(維修費用為不超過100的正整數).路的總數目不超過75條,每個村莊到其他村莊不會有超過15條路(包括編號在其之前和之後的)。

輸出每個資料集有乙個輸出:針對解決方案每個月維修道路的小費用。

樣例輸入

9

a 2 b 12 i 25

b 3 c 10 h 40 i 8

c 2 d 18 g 55

d 1 e 44

e 2 f 60 g 38

f 0g 1 h 35

h 1 i 35

3a 2 b 10 c 40

b 1 c 20

0

樣例輸出

216

30

#include#include#include#includeusing namespace std;

int t,i,j,m,n,f[30],sum;

struct data

;data num[600];

int cmp(data a,data b)

int main()

}int ans=0;

j=0;

sort(num+1,num+sum+1,cmp);

//for (i=1;i<=sum;i++)

// cout<

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

if(j==n-1)

}cin>>n;

}}//最小生成樹

03 叢林中的路

總時間限制 1000ms 記憶體限制 65536kb 描述 熱帶島嶼lagrishan的首領現在面臨乙個問題 幾年前,一批外援資金被用於維護村落之間的道路,但日益繁茂的叢林無情的侵蝕著村民的道路,導致道路維修開銷巨大,長老會不得不放棄部分道路的維護。上圖左側圖顯示的是正在使用道路的簡圖以及每條路每個...

鋼筋叢林中小白兔瘋狂的心跳

今年將滿二十二歲。明明還沒畢業卻已經半隻腳踏入社會,這樣一半學生一半社會人的身份帶來的體驗深有感觸。所有感觸中最讓我受不了的是那顆瘋狂跳動的心。大三之前,畢業目標和大多數學生的一樣,想要乙份體面的工作,可以開始掙錢養活自己,自由的生活。為了這個目標,總是狂妄地和長輩們說著我工作了要怎麼怎麼樣,我會怎...

森林中的兔子

題目 森林中,每個兔子都有顏色。其中一些兔子 可能是全部 告訴你還有多少其他的兔子和自己有相同的顏色。我們將這些回答放在answers陣列裡。返回森林中兔子的最少數量。說明 示例1 輸入 answers 1,1,2 輸出 5 解釋 兩隻回答了 1 的兔子可能有相同的顏色,設為紅色。之後回答了 2 的...