摘要: 如果不是从费用流区做这个题几乎不会想到用费用流 点有权值很容易想到拆点 问题是求最大sum ... 把权值取负 这样最小费用流的相反数就是最大sum 源点S汇点T k为移动次数 矩阵中的点拆成入点出点 入点到出点连: 一个1容量,-1*点权费用; 一个k容量,0费用 两条边。 这样能保证只在第一次经 阅读全文
posted @ 2017-10-03 22:03 DearDongchen 阅读(158) 评论(0) 推荐(0) 编辑
摘要: 边们增加了费用 求费用最少的最大流 在残余网络中,用spfa跑费用的最短路,然后沿着这条花费最少的增广路进行增广 (表示怀疑这样做的时间复杂度会比较高 因为他甚至都没有沿着分层图上最短路去增广...不过貌似没有别的办法...) 看起来很容易出现负圈并且死循环的样子 负圈的问题感觉大佬解释得比较清楚: 阅读全文
posted @ 2017-10-03 19:52 DearDongchen 阅读(205) 评论(0) 推荐(0) 编辑
摘要: POJ 3621 - Sightseeing Cows 找到一个圈,要求这个圈的点权和/边权和在所有的圈中最大,输出这个比率 设最大比率为ans ,∑V/∑E为一般的圈的比率k 最大的圈的k,即ans,>=所有的圈的k 即ans>=∑V/∑E 变形:∑(ans*E-V) > 0 图中边权改为ans* 阅读全文
posted @ 2017-10-03 17:12 DearDongchen 阅读(393) 评论(0) 推荐(0) 编辑