摘要: 费用流 并没有想出来构图方法 我们设立源汇,其实我们关心的是相邻两个值的差值,如果差值小于0说明需要长高,那么向汇点连边差值,说明需要修改,如果差大于零,那么由源点连边差值,说明可以提供修改空间,再由源点向1和n+1连边inf,因为这两个点是可以无限修改的。然后1-2-3-n+1连双向边,费用为1, 阅读全文
posted @ 2017-07-12 22:06 19992147 阅读(155) 评论(0) 推荐(0) 编辑
摘要: 二分+2-sat 枚举第一个权值,二分第二个权值,然后2-sat检查,当第一个权值已经不能形成二分图时,再往下没意义,因为没法分成两个点集。(双指针好像跑得慢) #include<bits/stdc++.h> using namespace std; const int N = 410; struc 阅读全文
posted @ 2017-07-12 21:58 19992147 阅读(272) 评论(0) 推荐(1) 编辑