☆ 輸入檔案:mst2.in
輸出檔案:mst2.out
簡單對比
時間限制:1 s 記憶體限制:256 mb
求嚴格次小生成樹
第一行包含兩個整數n 和m,表示無向圖的點數與邊數。 接下來 m行,每行 3個數x y z 表示,點 x 和點y之間有一條邊,邊的權值為z。
包含一行,僅乙個數,表示嚴格次小生成樹的邊權和。(資料保證必定存在嚴格次小生成樹)
5 61 2 1
1 3 2
2 4 3
3 5 4
3 4 3
4 5 6
11資料中無向圖無自環; 50% 的資料n≤2 000 m≤3 000; 80% 的資料n≤50 000 m≤100 000; 100% 的資料n≤100 000 m≤300 000 ,邊權值非負且不超過 10^9 。
bzoj。。。
1 #include 2 #include 3 #include 45using
namespace
std;67
const
int inf(0x7fffffff);8
const
int n(300005);9
struct
edge
1016
}edge[n];
17int
n,m,fa[n],used[n];
1819
int find(int
x)20
2324 inline int k(int
cant)
2537
return
inf;38}
3940 inline void read(int &x)
4146
intac()
4758 sort(edge+1,edge+m+1
);59
int fir_min=0,sec_min=inf,tmp,cnt=0;60
for(int i=1;i<=n;i++) fa[i]=i;
61for(int fx,fy,i=1;i<=m;i++)
6271
for(int i=1;i<=cnt;i++)
7277 printf("
%d\n
",sec_min);
78return0;
79}8081
int i_want_ac=ac();
82int main()
cogs P1578 模板 次小生成樹初級練習題
輸入檔案 mst2.in輸出檔案 mst2.out簡單對比 時間限制 1 s 記憶體限制 256 mb 求嚴格次小生成樹 第一行包含兩個整數n 和m,表示無向圖的點數與邊數。接下來 m行,每行 3個數x y z 表示,點 x 和點y之間有一條邊,邊的權值為z。包含一行,僅乙個數,表示嚴格次小生成樹的...
COGS 1578 次小生成樹初級練習題
輸入檔案 mst2.in輸出檔案 mst2.out簡單對比 時間限制 1 s 記憶體限制 256 mb 求嚴格次小生成樹 第一行包含兩個整數n 和m,表示無向圖的點數與邊數。接下來 m行,每行 3個數x y z 表示,點 x 和點y之間有一條邊,邊的權值為z。包含一行,僅乙個數,表示嚴格次小生成樹的...
最小生成樹 次小生成樹
一 最小生成樹 說到生成樹首先要解釋一下樹,樹是乙個聯通的無向無環圖,多棵樹的集合則被稱為森林。因此,樹具有許多性質 1.兩點之間的路徑是唯一的。2.邊數等於點數減一。3.連線任意兩點都會生成乙個環。對於乙個無向聯通圖g的子圖,如果它包含g的所有點,則它被稱為g的生成樹,而各邊權和最小的生成樹則被稱...