BZOJ2561 最小生成樹

2021-08-29 00:09:26 字數 807 閱讀 9058

傳送門

題解:暫時不想寫題qwq

顯然,加入這條邊後,權值比它大的邊和比它小的邊都不能讓這兩個點連通。求最小割即可。

蒟蒻只會isap。好久沒打isap的板子了…又及這範圍還真的過得去。

**:

#include

#include

#include

#define maxn 20005

#define maxm 400005

#define inf 0x3f3f3f3f

using

namespace std;

int n,m,s,t,l,d[maxn]

,vd[maxn]

,ans;

struct node edge[maxm]

,*head[maxn]

,*ncnt;

struct edg a[maxm]

;bool

cmp(edg p,edg q)

void

addedge

(int u,

int v,

int cap)

void

addedge

(int u,

int v)

intaug

(int u,

int tot)

mind=

min(mind,d[v]);

}if(!sum)

return sum;

}void

sap(

)int

main()

bzoj 2561 最小生成樹

給定乙個邊帶正權的連通無向圖g v,e 其中n v m e n個點從1到n依次編號,給定三個正整數u,v,和l u v 假設現在加入一條邊權為l的邊 u,v 那麼需要刪掉最少多少條邊,才能夠使得這條邊既可能出現在最小生成樹上,也可能出現在最大生成樹上?第一行包含用空格隔開的兩個整數,分別為n和m 接...

bzoj2561 最小生成樹

time limit 10 sec memory limit 128 mb submit 1024 solved 520 submit status discuss 給定乙個邊帶正權的連通無向圖g v,e 其中n v m e n個點從1到n依次編號,給定三個正整數u,v,和l u v 假設現在加入一...

bzoj 2561 最小生成樹

給定乙個邊帶正權的連通無向圖,現在加入一條邊權為l的邊 u,v 那麼需要刪掉最少多少條邊,才能夠使得這條邊既可能出現在最小生成樹上,也可能出現在最大生成樹上?以前看著一臉懵逼,現在好像就是那樣。容易想到,當u v存在一條路徑,上面不存在 l的邊,那麼新邊一定不在最小生成樹上,所以將所有小於l的邊建出...