【网络流24题】餐巾计划(最小费用流)
来源:互联网 发布:金庸群侠传 for mac 编辑:程序博客网 时间:2024/05/17 23:44
传送门
餐巾计划
I think
最小费用最大流。增设源汇点S,T,每i天分两个点xi,yi,分别表示每天应有餐巾与最终解决的餐巾数。记
另算法函数名很无赖地用了SPFA。
Code
#include<cstdio>#include<queue>using namespace std;const int sm = 2200;const int sn = 12200;const int Inf = 0x3f3f3f3f;int N,nw,qk,qc,lw,lc,Ans,tot=1,S,T;int to[sn],nxt[sn],hd[sm],c[sn],f[sn];int pre[sm],vis[sm],cst[sm];int Min(int x,int y) { return x<y?x:y; }void Add(int u,int v,int w,int val) { to[++tot]=v,nxt[tot]=hd[u],hd[u]=tot,c[tot]=w,f[tot]=val; to[++tot]=u,nxt[tot]=hd[v],hd[v]=tot,c[tot]=0,f[tot]=-val;}void SPFA() { int t,df; queue<int>q; while(1) { for(int i=1;i<=T;++i) pre[i]=vis[i]=0,cst[i]=Inf; cst[S]=0,vis[S]=1,q.push(S); while(!q.empty()) { t=q.front(),q.pop(); vis[t]=0; for(int i=hd[t];i;i=nxt[i]) if(cst[to[i]]>cst[t]+f[i]&&c[i]>0) { cst[to[i]]=cst[t]+f[i]; pre[to[i]]=i; if(!vis[to[i]]) { vis[to[i]]=1; q.push(to[i]); } } } if(cst[T]==Inf)break; df=Inf; for(int i=T;i!=S;i=to[pre[i]^1]) df=Min(df,c[pre[i]]); for(int i=T;i!=S;i=to[pre[i]^1]) c[pre[i]]-=df,c[pre[i]^1]+=df; Ans+=df*cst[T]; } printf("%d\n",Ans); }int main() { int u; scanf("%d%d%d%d%d%d",&N,&nw,&qk,&qc,&lw,&lc); S=N<<1|1,T=S+1; for(int i=1;i<=N;++i) { scanf("%d",&u); Add(S,i,u,0),Add(i+N,T,u,0); Add(S,i+N,Inf,nw); if(i+1<=N) Add(i,i+1,Inf,0); if(i+qk<=N) Add(i,i+N+qk,Inf,qc); if(i+lw<=N) Add(i,i+N+lw,Inf,lc); } SPFA(); return 0;}
阅读全文
0 0
- 【网络流24题】餐巾计划(最小费用流)
- 餐巾计划问题(最小费用流)
- 线性规划与网络流24题之餐巾计划问题 最小费用最大流
- [网络流24题] 餐巾计划问题 (最小费用最大流)
- nefu488餐巾计划问题【网络流24题】最小费用流
- 【loj】#6008. 「网络流 24 题」餐巾计划(最小费用流)
- 网络流24题 餐巾计划问题 zkw费用流
- [网络流24题] 餐巾 最小费用最大流
- 最小费用最大流 [网络流24题] 餐巾
- [网络流24题] 10 餐巾 (线性规划网络优化 ,最小费用最大流)
- BZOJ 1221 HNOI 2001 软件开发/网络流24题 餐巾计划问题 最小费用最大流
- 线性规划以网络流24题の10 餐巾计划问题(费用流)
- [网络流24题][CODEVS1237]餐巾计划问题(费用流)
- loj6008「网络流 24 题」餐巾计划(费用流)
- 费用流[网络流24题] 餐巾
- 【网络流24题】餐巾计划问题
- [网络流24题]餐巾计划问题
- 网络流24题 餐巾计划问题
- HDU 1698 Just a Hook
- thinkphp上传图片自动压缩问题
- 【Linux学习笔记】20:Bash基础-历史命令
- 静态成员-学习笔记
- Codeforces 798C Mike and GCD problem
- 【网络流24题】餐巾计划(最小费用流)
- Go1.9 安全map用法
- 第二次采样的原理
- Apache虚拟主机中 Options 的设置~~~~~~~显示Apache目录列表
- 最小生成树
- yolo2
- xml、dtd、SAX解析、DOM解析、DOM4J解析学习(一)
- 最近的维护心得总结(关于安全)
- Windows10安装基本应用程序体会