第一問求最小割。 第二問求割邊最小的最小割。
我們直接求出第二問就可以求出第一問了。
對於求割邊最小,如果我們可以把每條邊都附加乙個1的權值,那麼求最小割是不是會優先選擇1最少的邊呢。
但是如果直接把邊的權值+1,這樣求得的最小割就不是原來的最小割了,那是因為1會對原來的容量產生影響。
如果把每條邊的權值都乘以乙個很大的常數,再加上附加權值1,這樣求出的最小割是不是顯然也是原圖的最小割呢。
那麼最終的答案除以這個常數就是最小割的容量,最終的答案模這個常數就是最小割的最小割邊數。
# include # includeview code# include
# include
# include
# include
# include
# include
# include
# include
# include
using
namespace
std;
# define lowbit(x) ((x)&(-x))
# define pi acos(-1.0
)# define eps 1e-7
# define mod
1024523
# define inf 1e16
# define mem(a,b) memset(a,b,
sizeof
(a))
# define for(i,a,n)
for(int i=a; i<=n; ++i)
# define fo(i,a,n)
for(int i=a; ii)
# define bug puts("h
");# define lch p
<<1
,l,mid
# define rch p
<<1|1,mid+1
,r# define mp make_pair
# define pb push_back
typedef pair
pii;
typedef vector
vi;# pragma comment(linker,
"/stack:1024000000,1024000000")
typedef
long
long
ll;int
scan()
while(ch>='
0'&&ch<='9')
return x*f;
}void out(int
a)
if(a>=10) out(a/10
); putchar(a%10+'0'
);}const
int n=35;//
code begin...
struct edgeedge[4005
];int head[n], cnt=2
, s, t, vis[n];
queue
q;void add_edge(int u, int
v, ll w)
intbfs()}}
return vis[t]!=-1;}
ll dfs(
intx, ll low)
}if (temp==low) vis[x]=-1
;
return low-temp;
}int
main ()
英語練習134 The job interview
工作面試 卡麗 面試進行得如何?裘克 進行得很順利 謝謝。卡麗 公司的名稱是什麼?裘克 中華電子計算機。卡麗 我聽說它的名聲很好。裘克 那就是我去那裡求職的原因。how did your interview go?it went very well.thanks.what s the name of...
13 4 I O緩衝小結
13.4 i o緩衝小結 圖13 1概括了stdio函式庫和核心所採用的緩衝 針對輸出檔案 以及對各種緩衝型別的控制機制。從圖中自上而下,首先是通過stdio庫將使用者資料傳遞到stdio緩衝區,該緩衝區位於使用者態記憶體區。當緩衝區填滿時,stdio庫會呼叫write 系統呼叫,將資料傳遞到核心高...
134 LRU快取策略
為最近最少使用 lru 快取 策略設計乙個資料結構,它應該支援以下操作 獲取資料 get 和寫入資料 set 獲取資料get key 如果快取中存在key,則獲取其資料值 通常是正數 否則返回 1。寫入資料set key,value 如果key還沒有在快取中,則寫入其資料值。當快取達到上限,它應該在...