試題編號:
201412-4
試題名稱:
最優灌溉
時間限制:
1.0s
記憶體限制:
256.0mb
問題描述:
問題描述
雷雷承包了很多片麥田,為了灌溉這些麥田,雷雷在第乙個麥田挖了一口很深的水井,所有的麥田都從這口井來引水灌溉。
為了灌溉,雷雷需要建立一些水渠,以連線水井和麥田,雷雷也可以利用部分麥田作為「中轉站」,利用水渠連線不同的麥田,這樣只要一片麥田能被灌溉,則與其連線的麥田也能被灌溉。
現在雷雷知道哪些麥田之間可以建設水渠和建設每個水渠所需要的費用(注意不是所有麥田之間都可以建立水渠)。請問灌溉所有麥田最少需要多少費用來修建水渠。
輸入格式
輸入的第一行包含兩個正整數n, m,分別表示麥田的片數和雷雷可以建立的水渠的數量。麥田使用1, 2, 3, ……依次標號。
接下來m行,每行包含三個整數ai, bi, ci,表示第ai片麥田與第bi片麥田之間可以建立一條水渠,所需要的費用為ci。
輸出格式
輸出一行,包含乙個整數,表示灌溉所有麥田所需要的最小費用。
樣例輸入
4 41 2 1
2 3 4
2 4 2
3 4 3
樣例輸出
6樣例說明
建立以下三條水渠:麥田1與麥田2、麥田2與麥田4、麥田4與麥田3。
評測用例規模與約定
前20%的評測用例滿足:n≤5。
前40%的評測用例滿足:n≤20。
前60%的評測用例滿足:n≤100。
所有評測用例都滿足:1≤n≤1000,1≤m≤100,000,1≤ci≤10,000。
答題欄試題編號:
201412-4
試題名稱:
最優灌溉
編譯環境:
答案程式:
提交確認:
以下必須全部滿足才能提交:
我的程式沒有使用package語句來定義包的資訊。(如果定義了將無法評測)
我的程式的主類名稱是main,主類的定義是public class main。我的程式執行的入口是主類main中的main函式,定義為public static void main(string args)。
我沒有引用stdafx.h這個非標準的標頭檔案。(如果引用了會造成編譯錯誤)
我程式的執行入口函式是main,main的返回值型別是int,而且main的返回值始終是0。
我的程式是從標準輸入(system.in)中讀入資料的(使用scanner等類來處理system.in的輸入視為滿足條件),結果是輸出到標準輸出(system.out)的。
我的程式是從標準輸入中讀入資料的(使用cin/scanf等讀入),結果是輸出到標準輸出的(使用cout/printf等讀出)。
我的程式是從標準輸入中讀入資料的,結果是輸出到標準輸出的。
我的程式中沒有「請輸入n」之類的輸入輸出提示,也沒有輸出中間的結果,所有的輸出內容都與題設中的輸出格式相對應。我的輸出格式(包括換行和大小寫等)與題設中輸出格式的要求相符。
mst
#includeusingnamespace
std;
const
int n=1e5+5
;struct
node
bool
operator
<(const node &a)const
}e[n];
intn,m,ans,fa[n];
int find(int x)
intmain()
}printf("%d
",ans);
return0;
}
CCF 201412 4 最優灌溉
問題描述 雷雷承包了很多片麥田,為了灌溉這些麥田,雷雷在第乙個麥田挖了一口很深的水井,所有的麥田都從這口井來引水灌溉。為了灌溉,雷雷需要建立一些水渠,以連線水井和麥田,雷雷也可以利用部分麥田作為 中轉站 利用水渠連線不同的麥田,這樣只要一片麥田能被灌溉,則與其連線的麥田也能被灌溉。現在雷雷知道哪些麥...
CCF 201412 4 最優灌溉
問題描述 雷雷承包了很多片麥田,為了灌溉這些麥田,雷雷在第乙個麥田挖了一口很深的水井,所有的麥田都從這口井來引水灌溉。為了灌溉,雷雷需要建立一些水渠,以連線水井和麥田,雷雷也可以利用部分麥田作為 中轉站 利用水渠連線不同的麥田,這樣只要一片麥田能被灌溉,則與其連線的麥田也能被灌溉。現在雷雷知道哪些麥...
CCF 201412 4 最優灌溉
試題編號 201412 4 試題名稱 最優灌溉 時間限制 1.0s 記憶體限制 256.0mb 問題描述 問題描述 雷雷承包了很多片麥田,為了灌溉這些麥田,雷雷在第乙個麥田挖了一口很深的水井,所有的麥田都從這口井來引水灌溉。為了灌溉,雷雷需要建立一些水渠,以連線水井和麥田,雷雷也可以利用部分麥田作為...