随笔分类 -  算法->网络流

摘要:"【牛客网】Whalyzh's Problem" 每个$b_{i,j}$建一个点,认为选了$b_{i,j}$一定会选$a_{i}$和$a_{j}$ 选了$a_{i}$的话会带了一个$ b_{i,i}$的价值 然后再用01分数规划二分答案,选了$a_{i}$还会带来$ x$的代价,x是二分的答案 如果 阅读全文
posted @ 2019-06-21 09:45 sigongzi 阅读(279) 评论(0) 推荐(0)
摘要:"【牛客网】Idol Master" 也是一道网络流解线性规划 不过需要从小于号的那边解 限制是$a \leq \sum_{i = 1}^{k} x_{i}\leq b$ 其中$0 \leq x_{i} \leq 1$ $\sum_{i = 1}^{k} x_{i} = b y_{i}$ $y_i 阅读全文
posted @ 2019-06-21 08:52 sigongzi 阅读(432) 评论(0) 推荐(0)
摘要:"【洛谷】P3980 [NOI2008]志愿者招募" 我居然现在才会用费用流解线性规划…… 当然这里解决的一类问题比较特殊 以式子作为点,变量作为边,然后要求就是变量在不同的式子里出现了两次,系数一次为+1,一次为 1 这样的话就作为了一个出度和一个入度,和边正好对应了 我们设每种志愿者选择人数是$ 阅读全文
posted @ 2019-06-21 08:43 sigongzi 阅读(396) 评论(0) 推荐(0)
摘要:"【51nod】2564 格子染色" 这道题原来是网络流…… 感觉我网络流水平不行…… 这种只有两种选择的可以源点向该点连一条容量为b的边,该点向汇点连一条容量为w的边,如果割掉了b证明选w,如果割掉了w证明选b 那么$p$的限制怎么加呢,新建一个点$i'$,然后$i$往$i'$流一条容量为$p$的 阅读全文
posted @ 2019-06-21 07:40 sigongzi 阅读(284) 评论(0) 推荐(0)
摘要:LOJ 3097. 「SNOI2019」通信 费用流,有点玄妙 显然按照最小路径覆盖那题的建图思路,把一个点拆成两种点,一种是从这个点出去,标成$x_{i}$,一种是输入到这个点,使得两条路径合成一条(或者是新建一条),标成$y_i$ 源点向每个$x_i$流一条容量为1,费用为0的边 然后向每个$y 阅读全文
posted @ 2019-06-11 21:53 sigongzi 阅读(280) 评论(0) 推荐(0)
摘要:以前写Isap的时候,总是被卡,然后学了一发Isap的当前弧优化,好像可以水过很多题 但是一直没明白为啥Isap会走一个环??? 然后写dinic了,听说不容易被卡(来自去年九省联考的指导) 然而……我写了一遍上下界最小流,T了。。 后来发现我还是不懂为啥要当前弧,因为不会有环 于是去询问群友…… 阅读全文
posted @ 2019-06-11 13:52 sigongzi 阅读(329) 评论(0) 推荐(0)
摘要:LOJ 2239. 「CQOI2014」危桥 就是先把每条边正着连一条容量为2的边,反着连一条容量为2的边 显然如果只有一个人走的话,答案就是一个源点往起点连一条容量为次数×2的边,终点往汇点连一个次数×2的边,跑最大流看是否满流即可 两个人的话由于两个人的路径可能相交,有可能从$a_1$走到了$b 阅读全文
posted @ 2019-06-10 18:58 sigongzi 阅读(186) 评论(0) 推荐(0)
摘要:题解 直接二分然后建图跑网络流看看是否合法即可 就是源点向每个激光武器连一条二分到的时间×激光武器每秒攻击值的边 每个激光武器向能攻击的装甲连一条边 每个装甲向汇点连一条装甲值的边 代码 cpp include define fi first define se second define pii 阅读全文
posted @ 2018-12-19 14:31 sigongzi 阅读(422) 评论(0) 推荐(0)
摘要:题解 卡常卡不动,我自闭了,特判交上去过了 事实上90pts= = 我们考虑二分长度,每个点能覆盖圆的是一段圆弧 然后问能不能匹配出一个正多边形来 考虑抖动多边形,多边形的一个端点一定和圆弧重合 如果暴力枚举重合的点的话,是$O(n^4 log V)$ 但是因为是正多边形,每个端点都等价,我们就把旋 阅读全文
posted @ 2018-11-24 19:17 sigongzi 阅读(263) 评论(0) 推荐(0)
摘要:题解 我一直也不会网络流……orz 我们分析下这道题,显然和行列没啥关系,就是想给你n + m个串 那么我们对于非回文单词之外的单词,找到两两匹配的反转单词(即使另一个反转单词不会出现也要建出来) 具体就是我们建一个hash表,遇见一个单词读进来,把这个单词反转之后再存进哈希表里 然后我们把一对反转 阅读全文
posted @ 2018-08-23 10:13 sigongzi 阅读(218) 评论(0) 推荐(0)
摘要:题解 这道题的费用流如果朴素一点怎么建边呢 建出$\sum_{i = 1}^{n} p^{i} M$个点,第$i$个厨师的第$j$个点表示这个厨师倒数第$j$个做的是某道菜 这个点向汇点流一条流量为1,费用为0的边 然后每个菜建出来一个点,源点向每个菜流容量为$p$,费用为0的点,第$k$个菜想第$ 阅读全文
posted @ 2018-06-14 20:49 sigongzi 阅读(117) 评论(0) 推荐(0)
摘要:题解 神仙网络流啊…… naive的我一直想把每个纵轴拆点,每个纵轴建R个点(大概是要跑费用流吧……)……然后第二个限制就gg了,什么也想不出来,菜啊TAT 后来我发现大神们的建图都是,一个原点,一个汇点,一段长条,每一段就是一个点,流量是值,那么最小割就是最小值了,很神奇 然后每相邻的两个纵轴z向 阅读全文
posted @ 2018-06-13 08:50 sigongzi 阅读(154) 评论(0) 推荐(0)
摘要:题解 这个图是个二分图,因为如果有一个奇环的话,我们会发现一个数变成另一个数要乘上个数不同的质数,显然不可能 然后我们发现这个不是求最大流,而是问一定价值的情况下最大流是多少,二分一个流量,加上一条边限流,然后求最小费用(其实是最大费用,把权值取反即可)是不是小于等于0,再看流量有没有流满 代码 阅读全文
posted @ 2018-06-01 10:05 sigongzi 阅读(369) 评论(2) 推荐(0)
摘要:Farmer John's cows like to keep in touch via email so they have created a network of cowputers so that they can intercowmunicate. These machines route 阅读全文
posted @ 2017-02-20 21:36 sigongzi 阅读(555) 评论(0) 推荐(0)
摘要:1001: [BeiJing2006]狼抓兔子 Description 现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为(1,1),右下角点为(N,M)(上图中N=4 阅读全文
posted @ 2017-02-18 21:00 sigongzi 阅读(232) 评论(0) 推荐(0)
摘要:Every time it rains on Farmer John's fields, a pond forms over Bessie's favorite clover patch. This means that the clover is covered by water for awhi 阅读全文
posted @ 2017-01-16 20:32 sigongzi 阅读(307) 评论(0) 推荐(0)