Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
[ACM-ICPC] Minimum Cut
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
KuoE0
January 21, 2013
Programming
2
110
[ACM-ICPC] Minimum Cut
KuoE0
January 21, 2013
Tweet
Share
More Decks by KuoE0
See All by KuoE0
Protocol handler in Gecko
kuoe0
0
100
面試面試面試,因為很重要所以要說三次!
kuoe0
2
270
應徵軟體工程師
kuoe0
0
180
面試心得分享
kuoe0
0
430
Windows 真的不好用...
kuoe0
0
310
Python @Wheel Lab
kuoe0
0
230
Introduction to VP8
kuoe0
0
270
Python @NCKU_CSIE
kuoe0
0
130
[ACM-ICPC] Tree Isomorphism
kuoe0
1
260
Other Decks in Programming
See All in Programming
Apache Iceberg V3 and migration to V3
tomtanaka
0
160
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.4k
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
200
Raku Raku Notion 20260128
hareyakayuruyaka
0
240
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
220
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
280
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
170
OSSとなったswift-buildで Xcodeのビルドを差し替えられるため 自分でXcodeを直せる時代になっている ダイアモンド問題編
yimajo
3
620
Lambda のコードストレージ容量に気をつけましょう
tattwan718
0
130
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
300
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
200
Oxlintはいいぞ
yug1224
5
1.3k
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
37
7.1k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
450
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
62
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Typedesign – Prime Four
hannesfritz
42
2.9k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
117
110k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
230
Transcript
Minimum Cut ֲࢸݢʢKuoE0ʣ
[email protected]
KuoE0.ch
Cut
cut (undirected)
1 3 5 6 7 8 9 2 4 undirected
graph A partition of the vertices of a graph into two disjoint subsets
1 3 5 6 7 8 9 2 4 undirected
graph A partition of the vertices of a graph into two disjoint subsets
1 3 5 6 7 8 9 2 4 undirected
graph A partition of the vertices of a graph into two disjoint subsets
1 2 8 5 4 7 9 3 6 A
partition of the vertices of a graph into two disjoint subsets undirected graph
1 2 8 5 4 7 9 3 6 Cut-set
of the cut is the set of edges whose end points are in different subsets. undirected graph
1 2 8 5 4 7 9 3 6 Cut-set
of the cut is the set of edges whose end points are in different subsets. Cut-set undirected graph
1 2 8 5 4 7 9 3 6 weight
= number of edges or sum of weight on edges weight is 7 undirected graph
cut (directed)
1 3 5 6 7 8 9 2 4 directed
graph A partition of the vertices of a graph into two disjoint subsets
1 3 5 6 7 8 9 2 4 directed
graph A partition of the vertices of a graph into two disjoint subsets
1 3 5 6 7 8 9 2 4 directed
graph A partition of the vertices of a graph into two disjoint subsets
1 2 8 5 4 7 9 3 6 directed
graph A partition of the vertices of a graph into two disjoint subsets
1 2 8 5 4 7 9 3 6 directed
graph Cut-set of the cut is the set of edges whose end points are in different subsets.
1 2 8 5 4 7 9 3 6 directed
graph Cut-set of the cut is the set of edges whose end points are in different subsets.
1 2 8 5 4 7 9 3 6 Cut-set
directed graph Cut-set of the cut is the set of edges whose end points are in different subsets.
1 2 8 5 4 7 9 3 6 weight
is 5⇢ or 2⇠ directed graph weight = number of edges or sum of weight on edges
s-t cut 1. one side is source 2. another side
is sink 3. cut-set only consists of edges going from source’s side to sink’s side
1 3 5 6 7 8 9 2 4 flow
network Source Sink Other
1 3 5 6 7 8 9 2 4 flow
network Source Sink
1 3 5 6 7 8 9 2 4 flow
network Source Sink
1 2 8 5 4 7 9 3 6 flow
network cut-set only consists of edges going from source’s side to sink’s side
1 2 8 5 4 7 9 3 6 weight
is 6 flow network cut-set only consists of edges going from source’s side to sink’s side
Max-Flow Min-Cut Theorem
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 3 + 3 = 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 3 + 3 = 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 3 + 4 - 1 = 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 3 + 4 - 1 = 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 4 + 2= 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 4 + 2= 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 4 + 2= 6
Observation 1 The network flow sent across any cut is
equal to the amount reaching sink. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 total flow = 6, flow on cut = 4 + 2= 6
Observation 2 Then the value of the flow is at
most the capacity of any cut. 1 3 2 4 5 6 3 8 4 2 4 4 3 It’s trivial!
Observation 2 Then the value of the flow is at
most the capacity of any cut. 1 3 2 4 5 6 3 8 4 2 4 4 3 It’s trivial!
Observation 3 Let f be a flow, and let (S,T)
be an s-t cut whose capacity equals the value of f. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 f is the maximum flow (S,T) is the minimum cut
Observation 3 Let f be a flow, and let (S,T)
be an s-t cut whose capacity equals the value of f. 1 3 2 4 5 6 3/3 3/8 4/4 2/2 1/4 4/4 2/3 f is the maximum flow (S,T) is the minimum cut
Max-Flow EQUAL Min-Cut
Example
1 3 2 4 5 6 3 8 4 2
4 4 3
1 3 2 4 5 6 3/3 3/8 4/4 2/2
1/4 4/4 2/3 Maximum Flow = 6
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 Residual Network
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 Minimum Cut = 6
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 Minimum Cut = 6
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 Minimum Cut = 6
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 Minimum Cut = 6
The minimum capacity limit the maximum flow!
find a s-t cut
1 3 2 4 5 6 3/3 3/8 4/4 2/2
1/4 4/4 2/3 Maximum Flow = 6
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 Travel on Residual Network
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 start from source
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 don’t travel through full edge
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 don’t travel through full edge
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 no residual edge
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 no residual edge
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 s-t cut
1 3 2 4 5 6 0/3 5/8 0/4 0/2
3/4 0/4 1/3 s-t cut
result of starting from sink 1 3 2 4 5
6 0/3 5/8 0/4 0/2 3/4 0/4 1/3
result of starting from sink 1 3 2 4 5
6 0/3 5/8 0/4 0/2 3/4 0/4 1/3
Minimum cut is non-unique!
time complexity: based on max-flow algorithm Ford-Fulkerson algorithm O(EF) Edmonds-Karp
algorithm O(VE2) Dinic algorithm O(V2E)
Stoer Wagner only for undirected graph time complexity: O(N3) or
O(N2log2N)
UVa 10480 - Sabotage Practice Now
Problem List UVa 10480 UVa 10989 POJ 1815 POJ 2914
POJ 3084 POJ 3308 POJ 3469
Reference • http://www.flickr.com/photos/dgjones/335788038/ • http://www.flickr.com/photos/njsouthall/3181945005/ • http://www.csie.ntnu.edu.tw/~u91029/Cut.html • http://en.wikipedia.org/wiki/Cut_(graph_theory) •
http://en.wikipedia.org/wiki/Max-flow_min-cut_theorem • http://www.cs.princeton.edu/courses/archive/spr04/cos226/lectures/ maxflow.4up.pdf • http://www.cnblogs.com/scau20110726/archive/ 2012/11/27/2791523.html
Thank You for Your Listening.