随笔分类 -  网络流

摘要:同样是模板题。 首先将有源汇转换为无源汇,假设原来的源汇为st,我们加入的源汇为ST,那么我们应该从t到s连一条流量为+∞的边,使原来的st满足收支平衡,退化为普通节点。 分离必要边和其他边,从S到T跑最大流,所有与源或者汇相连的边都流满则证明有解。 去掉t到s容量为+∞的边,去掉必要边,... 阅读全文
posted @ 2015-12-18 01:03 y7070 阅读(502) 评论(0) 推荐(1)
摘要:这是模板题了吧,先建立附加源汇,然后保留每个点的in-out,如果这个值是正的,那么就从附加源先这个点连一个边权为in-out的边,否则从这个点向附加汇连一条相反数的边,剩下题目中的边就用上界-下界连就好了。 1 #include 2 #define rep(i, a, b) for (int... 阅读全文
posted @ 2015-12-17 02:01 y7070 阅读(506) 评论(0) 推荐(0)
摘要:bzoj1070: 把每个工人拆成汽车那么多个点,假如说 工人(i, j) 和 汽车k 连边,那就代表第i个工人倒数第j个修汽车k,那么这条边对以后的贡献就是k*time[i修k]。 1 #include 2 #define rep(i, a, b) for (int i = a; i = b;... 阅读全文
posted @ 2015-12-15 12:34 y7070 阅读(200) 评论(0) 推荐(0)
摘要:这题就是复习下网络流。 1 #include 2 #define rep(i, a, b) for (int i = a; i = b; i--) 4 #define REP(i, a, b) for (int i = a; i pii; 13 const int inf = ~0U ... 阅读全文
posted @ 2015-12-14 17:31 y7070 阅读(220) 评论(0) 推荐(0)
摘要:2015年11月23日 网络流24题 COGS 14 二分图匹配。 Dinic: 1 #include 2 #define rep(i, a, b) for (int i = a; i = b; i--) 4 #define REP(i, a, b) for (int i = a; ... 阅读全文
posted @ 2015-11-23 16:26 y7070 阅读(303) 评论(0) 推荐(1)