
网络流
文章平均质量分 71
拉风的啤酒肚
菜鸟一枚若发表的文章有所错误望各位大神提出意见
展开
-
网络流模版(Dinic算法)
#include #include #include #include #include #include #define INF 999999999 #define maxn 105 using namespace std; int N,E,S,T; //结点数,边数(包括反向弧),源点编号和汇点编号 struct Edge { int from,to,cap,flow; }原创 2013-11-12 16:08:28 · 793 阅读 · 0 评论 -
POJ2135(最小费用最大流)
建立一个超级源点到1这个点的容量为2,费用为0,超级汇点同理,模版题。 #include #include #include #include #include #include #include using namespace std; const int maxn=1005*1005*2; const int INF=999999999; struct Edge { in原创 2014-02-22 10:07:54 · 1083 阅读 · 0 评论 -
POJ3281--Dining(最大流)
主要是构图。 刚开始我想的是源点->牛->食物->饮料,发现问题很多,正确的构图应该是源点->食物->牛->牛->饮料->汇点,中间牛与牛之间的容量为1。 #include #include #include #include #include #include #include #include #include #include #include #include using namesp原创 2014-02-11 20:47:51 · 846 阅读 · 0 评论 -
POJ1459--Power Network(最大流)
最大流模版题。多源点多汇点,只需再添加两个点,将其中一个点与各个源点连接,并将其最为源点,汇点同理。 #include #include #include #include #include #include #include using namespace std; const int maxn=205*205; const int INF=999999999; struct原创 2014-02-10 18:05:39 · 1068 阅读 · 0 评论 -
POJ1274--The Perfect Stall(最大流)
这题可以用网络流做,也可以用二分匹配做。我用的是网络流,其中结点的总数是(n+m+2)(其中两个是超级源点和超级汇点)个。 构图的话从超级源点到每头牛的容量为1,每头牛到它喜欢的谷仓的容量为1,各个谷仓到超级汇点的容量为1。 #include #include #include #include #include #include #include #include #include #inc原创 2014-02-11 18:13:38 · 1248 阅读 · 0 评论 -
HDU4289(最大流)(dinic算法+拆点)
将每个城市拆成两个点,他们之间的流量就是这个城市的值,不同城市之间的流量是无穷,这样走一遍最大流就可以了。 #include #include #include #include #include #include #include using namespace std; const int maxn=100005; const int INF=999999999; stru原创 2014-02-14 19:04:24 · 1132 阅读 · 0 评论