【arc077f】AtCoder Regular Contest 074 F

题意

给定一个n*m的池塘,每个格子上可能有叶子。
从一个叶子出发,可以跳到相同行或相同列的叶子。
问至少去掉多少叶子,使得起点不能到达终点。

(n,m<=100)

解法

很显然的最小割模型。
每列每行都新建一个点。
每片叶子拆成两个点,一个向另一个连一条容量为1的边。
另外一个就要向本行本列新建的那个点连一条容量无穷的边。
然后新建的那个点给所有本行或本列的叶子的第一个点连一条容量无穷的边。
然后跑一遍最小割就行了。

原文地址:https://www.cnblogs.com/hiweibolu/p/8485981.html