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
KuoE0
January 21, 2013
Programming
2
100
[ACM-ICPC] Minimum Cut
KuoE0
January 21, 2013
Tweet
Share
More Decks by KuoE0
See All by KuoE0
Protocol handler in Gecko
kuoe0
0
96
面試面試面試,因為很重要所以要說三次!
kuoe0
2
240
應徵軟體工程師
kuoe0
0
160
面試心得分享
kuoe0
0
410
Windows 真的不好用...
kuoe0
0
280
Python @Wheel Lab
kuoe0
0
200
Introduction to VP8
kuoe0
0
240
Python @NCKU_CSIE
kuoe0
0
120
[ACM-ICPC] Tree Isomorphism
kuoe0
1
250
Other Decks in Programming
See All in Programming
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
170
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
15
5.6k
dbt民主化とLLMによる開発ブースト ~ AI Readyな分析サイクルを目指して ~
yoshyum
3
1.1k
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
4
1.3k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
260
NPOでのDevinの活用
codeforeveryone
0
900
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
11
1.3k
「App Intent」よくわからんけどすごい!
rinngo0302
1
100
AWS Summit Japan 2024と2025の比較/はじめてのKiro、今あなたは岐路に立つ
satoshi256kbyte
0
120
可変変数との向き合い方 $$変数名が踊り出す$$ / php conference Variable variables
gunji
0
180
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
140
テスターからテストエンジニアへ ~新米テストエンジニアが歩んだ9ヶ月振り返り~
non0113
2
220
Featured
See All Featured
Why Our Code Smells
bkeepers
PRO
337
57k
Facilitating Awesome Meetings
lara
54
6.5k
YesSQL, Process and Tooling at Scale
rocio
173
14k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Git: the NoSQL Database
bkeepers
PRO
430
65k
Designing for humans not robots
tammielis
253
25k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Side Projects
sachag
455
42k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
970
Into the Great Unknown - MozCon
thekraken
40
1.9k
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.