![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
网络流
Joker & Liar
这个作者很懒,什么都没留下…
展开
-
2020牛客多校(第一场)- H.Minimum-cost Flow
大致题意:给定 nnn 个点 mmm 条边的网络,每条边给出单位流量的花费,现在有 qqq 次询问,每次给出 u,vu,vu,v 表示把所有边的容量设定为 uv\frac{u}{v}vu ,问能否从点 111 到 nnn 流过 一单位流量,可以的话给出最小花费;2≤n≤502 \leq n \leq 502≤n≤501≤m≤1001 \leq m \leq 1001≤m≤1001≤ai,bi≤n1 \leq a_i,b_i \leq n1≤ai,bi≤n1≤ci≤1051 \leq c_i原创 2020-07-23 10:59:38 · 129 阅读 · 0 评论 -
#2674. 「NOI2012」美食节
分析:这题 和 P2053 [SCOI2007]修车 想法一样,把每个厨师拆成 p 个点按要求连边求最大流最小费用,但是拆点后最大有80000多个点,边都存不下(而且很多边完全用不到),存下了直接求也肯定 T ,需要优化。我们知道每次增广只求出一条增广路,那么就可以每次根据求出的增广路去添加相关的边。代码:#include<bits/stdc++.h>#define ...原创 2020-04-07 20:45:35 · 203 阅读 · 0 评论 -
P2053 [SCOI2007]修车
分析:最小平均等待时间,即总最短等待时间,设一个技术人员依次维修了 t1~tk k 辆车,则它对总等待时间的贡献是: t1∗k+t2∗(k−1)+...+tk∗1 t1*k+t2*(k-1)+...+tk*1t1∗k+t2∗(k−1)+...+tk∗1 那么把每个技术人员分成 n 个时间段,第 i 个时间段的贡献即: (n−i+1)∗ti(n-i+1)*ti(n−i+1)∗ti这样一共有 n*...原创 2020-04-06 20:24:55 · 133 阅读 · 0 评论 -
POJ - 1087 (A Plug for UNIX)
题意:一个房间里有 n 个插座,现在有 m 个插头送过来匹配,还有 k 个转换器,一种插头匹配一种插座,转换器的格式 A B 表示把 A类型的插头变成B类型的插头,问 m 个插头最少剩几个不能匹配成功;分析:网络流建图,我们用map给不同类型的插头插座编号,并设最大编号为res,设一种插头插座的编号为 u,则 2*u-1 代表 插头,2*u代表插座,① 0 为 源点,由 0 向 m...原创 2020-03-22 23:02:04 · 134 阅读 · 0 评论 -
POJ - 3281 (Dining)
题意:有 N 头牛,F种食物和D种饮料,每头牛都有喜欢的食物集合和饮料集合,如果在两个集合中分别任选一个就可以让这头牛满意,现给出N头牛的喜爱的食物和饮料集合,求F种食物和D种饮料每个只有一份的情况下最多能满足牛的数量;分析:网络流建图,设 0 为源点,1~F 为食物的种类编号,F+1~F+D为饮料的种类编号,F+D+2*i-1~F+D+2*i 为第i头牛的编号(后面解释为什么一头牛需要...原创 2020-03-17 21:36:19 · 171 阅读 · 0 评论