E - Minimum Cost - POJ 2516(最小费)

分析:第一次做的时候想到把供应商的每种商品和客户的需求的每种商品直接连接然后求最大流,不过CE了,想着数据都是50也不大,不过仔细一想 50*50*50那就很大了,我的数组只开了500....然后想了一下觉得边是非常少的于是换成了邻接矩阵储存,然后果断给了一个TLE,下面是超时代码

#include<;
;
];
; i<=End; i++)
dist[i] = oo, pre[i]=-;
dist[start] = ;
; i=edge[i].next)
{
, cost=;
; i=pre[edge[i].u])
MinFlow = min(MinFlow, edge[i].flow);
; i=pre[edge[i].u])
{
edge[i].flow -= MinFlow;
edge[i^].flow += MinFlow;
cost += edge[i].cost;
}
MaxFlow += MinFlow;
}
;
, End = start+;
; i<=End; i++)
Head[i] = -;
cnt = ;
; i<N; i++)
; j<=K; j++)
{);
AddEdge(End, nk, , );
needFlow += x;
}
; i<M; i++)
; j<=K; j++)
{);
AddEdge(mk, start, , );
}
; k<=K; k++)
; i<N; i++)
; j<M; j++)
{, -x);
}
MinCost(start, End, needFlow);
}
;
}
然后就有些不知该怎么搞,只能向大神求助,看了别人的思路,原来这是多源多汇的费用流问题,看到这里也就明白了怎么做把K种商品拆开,对每一种商品进行最小费处理,这样图只有100*100,然后最多操作50次,很容易就求出来了结果。下面是AC代码。

#include<;
;
};
; i<=End; i++)
dist[i] = oo;
dist[start] = ;
; i<=End; i++)
{
, cost=, pre[MAXN]={};
;
;
; i<=N; i++)
; j<=K; j++)
{; i<=M; i++)
; j<=K; j++)
{; k<=K; k++)
{, ; i<=N; i++)
; j<=M; j++)
{, End = start+;
;; i<=M; i++)
{; i<=N; i++)
{)
ok = ;
printf(;
}
E - Minimum Cost - POJ 2516(最小费)的更多相关文章
- kuangbin专题专题十一 网络流 Minimum Cost POJ - 2516
题目链接:https://vjudge.net/problem/POJ-2516 思路:对于每种商品跑最小费用最大流,如果所有商品和人一起建图跑,O(v^2*m)数量级太大,会超时. 把店里的商品拆点 ...
- Minimum Cost POJ - 2516(模板题。。没啥好说的。。)
题意: 从发货地到商家 送货 求送货花费的最小费用... 有m个发货地,,,n个商家,,每个商家所需要的物品和物品的个数都不一样,,,每个发货地有的物品和物品的个数也不一样,,, 从不同的发货地到不同 ...
- Minimum Cost POJ - 2516 (模板题 spfa最小费用最大流)
题意: 人回家,一步一块钱,有x个人,y个房子,求能回家的最大人数且使之费用最小 解析: 就是....套模板,,,, 建图(⊙﹏⊙)...要仔细观察呐 对于人拆不拆都可以 都能过,,,,这里贴上拆开 ...
- POJ 2516 Minimum Cost (网络流,最小费用流)
POJ 2516 Minimum Cost (网络流,最小费用流) Description Dearboy, a goods victualer, now comes to a big problem ...
- Poj 2516 Minimum Cost (最小花费最大流)
题目链接: Poj 2516 Minimum Cost 题目描述: 有n个商店,m个仓储,每个商店和仓库都有k种货物.嘛!现在n个商店要开始向m个仓库发出订单了,订单信息为当前商店对每种货物的需求 ...
- POJ 2516 Minimum Cost (最小费用最大流)
POJ 2516 Minimum Cost 链接:http://poj.org/problem?id=2516 题意:有M个仓库.N个商人.K种物品.先输入N,M.K.然后输入N行K个数,每一行代表一 ...
- POJ - 2516 Minimum Cost 每次要跑K次费用流
传送门:poj.org/problem?id=2516 题意: 有m个仓库,n个买家,k个商品,每个仓库运送不同商品到不同买家的路费是不同的.问为了满足不同买家的订单的最小的花费. 思路: 设立一个源 ...
- POJ 2516 Minimum Cost (费用流)
题面 Dearboy, a goods victualer, now comes to a big problem, and he needs your help. In his sale area ...
- POJ 2516 Minimum Cost 最小费用流 难度:1
Minimum Cost Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 13511 Accepted: 4628 Des ...
随机推荐
- 【小TIP】记录各种错误【更新中】
最好程序一遍通过,为了提高代码能力,这里将用TIP的形式记录来犯过的错误.不断更新中. *已经转移到闪存.. [150214]WA:检查是否数组开小了. [150212]WA:如果程序中有乘号,需要留 ...
- GridView点击行,选中模版列中CheckBox
<asp:TemplateField ItemStyle-Width="40px" HeaderText="选择" ItemStyle-Horizonta ...
- (转)解析PHP中ob_start()函数的用法
本篇文章是对PHP中ob_start()函数的用法进行了详细的分析介绍,需要的朋友参考下 ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行 ...
- CSS代码语法
css 样式由选择符和声明组成,而声明又由属性和值组成,如下图所示: 选择符:又称选择器,指明网页中要应用样式规则的元素,如本例中是网页中所有的段(p)的文字将变成蓝色,而其他的元素(如ol)不会受到 ...
- [转]Delphi : keydown与keypress的区别,组合键
Shift 是一个集合变量. type TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDoubl ...
- JavaScript--机选双色球
<!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...
- hdu1690 Bus System(最短路 Dijkstra)
Problem Description Because of the huge population of China, public transportation is very important ...
- c#利用WebClient和WebRequest获取网页源代码
C#中一般是可以利用WebClient类和WebRequest类获取网页源代码.下面分别说明这两种方法的实现. WebClient类获取网页源代码 WebClient类 WebClient ...
- (转载)div最小宽度和自适应的实现方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- FMDB警告Warning: there is at least one open result set around after performing的问题
FMDB操作sqlite的时候总是报警告Warning: there is at least one open result set around after performing,后来发现是执行查询 ...