摘要: 最小割. 显然按位拆分,然后对于有矛盾的连流量为 1 的边,代表如果然不同颜色需要花费 1 的代价. 跑一个最大流即可. code: #include <bits/stdc++.h> #define N 560 #define ll long long #define setIO(s) freope 阅读全文
posted @ 2020-03-19 22:22 EM-LGH 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 非常经典的最小割模型. code: #include <bits/stdc++.h> #define N 3006 #define ll long long #define setIO(s) freopen(s".in","r",stdin) using namespace std; const l 阅读全文
posted @ 2020-03-19 20:49 EM-LGH 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 这类最优化问题的本质是决策一个点选还是不选. 那么,我们可以用最小割帮我们决策到底选还是不选(因为最小割的本质是将元素划分成两个集合的最小代价) 然后每条边显然有断开的代价,描述出代价的关系和差量题就做出来了. code: #include <cstdio> #include <cstring> # 阅读全文
posted @ 2020-03-19 09:32 EM-LGH 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 吸氧才能过,写一个分治就行. 这里讲一下构造方法:考虑对点集 $U$ 求最小割树. 随便选取两个点 $u,v$ 然后跑一个 $u$ 到 $v$ 的最小割. 然后有两条性质: 对于 $U$ 中的每个点,一定被划分到了 $u$ 集合或 $v$ 集合(废话) 对于 $u$ 集合点到 $v$ 集合点的最小割 阅读全文
posted @ 2020-03-19 08:15 EM-LGH 阅读(130) 评论(0) 推荐(0) 编辑