摘要: 这道题的建模不太难,基本你用过转换插头的话就明白是怎么回事了hh 1.源点与所有【已有plug】连边 2.【所有device】与汇点连边 3.该device用的插头与device连边 4.转换插头连边,这里容量是INF 网络流里流的是这种安排plug的方案可不可行,1是可行,0是不可行 做题的时候我 阅读全文
posted @ 2018-08-23 11:12 4397 阅读(184) 评论(0) 推荐(0) 编辑
摘要: 这个思路是真的想不到。 一开始想的是源点到每个奶牛的容量为1,然后奶牛到drink和food可以建容量为1的边,但怎么连到汇点就不知道了。 神来之笔是,把源点跟所有food连边,然后food跟输入指定的奶牛连边,奶牛再按输入跟drink连边,所有drink再去跟汇点连边。【特定奶牛吃了food,再喝 阅读全文
posted @ 2018-08-23 00:23 4397 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 以前都是拿邻接矩阵来实现,这道题的数据里有重边,所以不得不用邻接表了。 现学了一下,用的是前向星数据结构。可以把前向星想象成链表,next是指针,再具体点就是上一条边的索引(要知道上一条边指的是什么,看我代码内的注释)。head[u]是以u为起点的所有边的入口 但这么实现还是比较麻烦,感觉用vect 阅读全文
posted @ 2018-08-22 09:59 4397 阅读(160) 评论(0) 推荐(0) 编辑
摘要: 调完样例后居然一次ac,感动啊... 这是一个模板题有两个点要注意 一是建图的时候要用+=而不能直接=,因为两个点之间的管道可能会多次叠加(特别是处理x和y的时候) 二是在最后算s的流出流量之和时要先把【t到s】和【s到t】的边删掉 像素好低啊。。 阅读全文
posted @ 2018-08-20 11:24 4397 阅读(259) 评论(0) 推荐(0) 编辑
摘要: 居然手写dinic一次过了,激动。。 这题构建网络流模型的思路还是蛮巧妙的,想要解题要想到两个题目里面给的暗示。 1.each milking machine process at most M cows each day,这是赤裸裸的网络流啊!由此联想到每个milk machine到汇点的capa 阅读全文
posted @ 2018-08-20 03:25 4397 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 我ac掉网络流的第一题! 先总结一下网络流的一些算法吧,首先是Ford-Fulkerson算法,这个算法是保证了众多网络流算法的【正确性】,其他算法也是基于其【优化】得到的。Ford的算法在于引入“反向边”的概念,反向边就是反悔边,代表你给修正以前走了的边一个机会。为什么反向边是对的呢,凭空加进来一 阅读全文
posted @ 2018-08-02 22:42 4397 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 一道水题,但得把这道题对应上最小生成树模型。 把整个问题看做一个完全图,村庄就是点, 图上两点之间的边的权值,就是两个村庄 的直线距离。 只需在该图上求最小生成树,d 的最小值即为 第 K 长边! 因为:最小生成树中的最长k-1条长边都去掉 后,正好将原树分成了k 个连通分支,在每 个连通分支上摆一 阅读全文
posted @ 2018-07-31 23:23 4397 阅读(196) 评论(0) 推荐(0) 编辑
摘要: dp[i][j][k]代表前i层,第i层炮兵布局为j,第i-1层炮兵布局为k的最多摆放炮兵数。我们要记录两层的炮兵摆放,而且转移的时候要枚举第i-2层的状态m,使得m与j相容,m与k相容(当然也保证j与k相容),这样才满足无后效性。只要m满足相容的条件,那怎么从第1层到第i-3层摆放炮兵都无所谓了, 阅读全文
posted @ 2018-07-31 20:01 4397 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 非常难想的题,感觉如果是第一次做的话很难做出来了。 这里问的其实有三个问题,而且相对独立,所以要分开求解。 1.整数n拆成k个正整数 dp[i][j]代表整数 i 拆成k个正整数有多少拆法,那转移方程是dp[i][j] = dp[i-j][j] + dp[i-1][j-1] 这一点我觉得基本上是想不 阅读全文
posted @ 2018-07-31 01:15 4397 阅读(1140) 评论(0) 推荐(1) 编辑
摘要: 现在做dp题有点感觉了,以前估计会觉得这题很难,现在觉得这是道不是很水的水题 dp[i][j]代表A里前i个加上B里前j个能不能组成C的前i+j个。 至于怎么想到的呢,n是200,有1000组数据,所以猜测要dp二维,然后很容易就想到了。 这里再考虑到C[i+j]的这个元素肯定是由A[i]或B[j] 阅读全文
posted @ 2018-07-30 23:27 4397 阅读(250) 评论(0) 推荐(0) 编辑