这很像之前做的一道noip模拟题……

所以当时那题也可以用费用流写(雾)

拆点,将每个月拆成两个点,一个向起点连边表示产量,另一个点连汇点表示销量。

然后每个点依次往后面的点2连边,表示保存。

#include<bits/stdc++.h>
#define N 10005
#define inf 1000000007
#define naive 0
using namespace std;
typedef long long ll;ll ans=naive;
int wy,n,m,I,head[N],tot=naive,pre[N],inq[N],dis[N],s,t;
struct Edge{int u,v,next,f,c;}G[];
inline void addedge(int u,int v,int f,int c){
G[tot].u=u;G[tot].v=v;G[tot].f=f;G[tot].c=c;G[tot].next=head[u];head[u]=tot++;
G[tot].u=v;G[tot].v=u;G[tot].f=;G[tot].c=-c;G[tot].next=head[v];head[v]=tot++;
}
inline bool bfs(int s,int t){
memset(inq,naive,sizeof(inq));memset(pre,-,sizeof(pre));for(int i=s;i<=t;i++)dis[i]=inf;
queue<int>q;q.push(s);dis[s]=naive;
while(!q.empty()){
int u=q.front();q.pop();inq[u]=;
for(int i=head[u];~i;i=G[i].next){
int v=G[i].v,f=G[i].f,c=G[i].c;
if(f&&dis[v]>dis[u]+c){pre[v]=i;dis[v]=dis[u]+c;inq[v]=;q.push(v);}
}
}
return dis[t]!=inf;
}
void mcmf(int s,int t){
while(bfs(s,t)){
int x=inf;if(dis[t]>)return;
for(int i=pre[t];~i;i=pre[G[i].u])x=min(x,G[i].f);
for(int i=pre[t];~i;i=pre[G[i].u])G[i].f-=x,G[i^].f+=x,ans+=1LL*G[i].c*x;
}
}
inline int read(){
int f=,x=;char ch;
do{ch=getchar();if(ch=='-')f=-;}while(ch<''||ch>'');
do{x=x*+ch-'';ch=getchar();}while(ch>=''&&ch<='');
return f*x;
}
int main(){
int T=read();
while(T--){
m=read();I=read();ans=naive;memset(head,-,sizeof(head));tot=naive;t=*m+;s=naive;
for(int i=;i<=m;i++){
int c1=read(),f1=read(),c2=read(),f2=read(),x=read();
addedge(s,i,f1,c1);addedge(i+m,t,f2,-c2);
for(int j=i;j<=min(i+x,m);j++)addedge(i,j+m,inf,I*(j-i));
}
mcmf(s,t);printf("Case %d: %lld\n",++wy,-ans);
}
}

【uva11613】生产销售规划的更多相关文章

  1. 【UVA11613 训练指南】生产销售规划 【费用流】

    题意: Acme公司生产一种X元素,给出该元素在未来M个月中每个月的单位售价.最大产量.最大销售量,以及最大储存时间(过期报废不过可以储存任意多的量).你的任务是计算出公司能够赚到的最大利润. 分析: ...

  2. 【网络流问题·我就想建好模】

    ·为了有助于你读后文,在写题前先列出一些大米饼的代码习惯: 一个提醒:所有的ADD函数无特殊说明均如图:(没有w就直接跳过) 以及: go(i,a,b)=====for(int i=a;i<=b ...

  3. 时间规划在Optaplanner上的实现

    在与诸位交流中,使用较多的生产计划和路线规划场景中,大家最为关注的焦点是关于时间的处理问题.确实,时间这一维度具有一定的特殊性.因为时间是一维的,体现为通过图形表示时,它仅可以通过一条有向直线来表达它 ...

  4. 深入解析 ERP 计划的各个层次

    ERP 生产计划管理按照 ERP 计划的层次主要分为:经营规划.销售和运作规划.主生产计划.物料需求计划.能力需求计划.执行能力计划.执行物料计划等. 经营规划是企业的战略规划,用于确定企业经营目标和 ...

  5. 食品生鲜调料代理分销拼团商城微信小程序

    食品生鲜调料代理分销拼团商城微信小程序 现在小程序越来越火爆了,一种新的分销拼团模式出现了.一起来分享一下吧 调料商城是一家是专业从事各种调料生产和网上调料商品销售平台,是藤椒油.花椒油.香油.火锅油 ...

  6. Acme Corporation UVA - 11613 拆点法+最大费用最大流(费用取相反数)+费用有正负

    /** 题目:Acme Corporation UVA - 11613 拆点法+最大费用最大流(费用取相反数)+费用有正负 链接:https://vjudge.net/problem/UVA-1161 ...

  7. SAP-财务知识点

    [转自 http://blog.itpub.net/195776/viewspace-1023912/] SAP FI/CO Reading RepositorySAP财务成本知识库 目 录前言.一. ...

  8. xv6课本翻译之——附录A Pc的硬件

    Appendix A 附录A PC hardware Pc的硬件 This appendix describes personal computer (PC) hardware, the platfo ...

  9. Navi.Soft20.WinCE使用手册

    1.概述 1.1应用场景 随着物联网的普及,越来越多的制造商对货品从原料配备,加工生产,销售出库等环节的要求和把控越来越高.在此情况之下,传统的ERP软件已经无法满足现有的流程. 移动设备的应用,在很 ...

随机推荐

  1. BZOJ 1211 树的计数(purfer序列)

    首先考虑无解的情况, 根据purfer序列,当dee[i]=0并且n!=1的时候,必然无解.否则为1. 且sum(dee[i]-1)!=n-2也必然无解. 剩下的使用排列组合即可推出公式.需要注意的是 ...

  2. BZOJ4770 图样(概率期望+动态规划)

    考虑求出所有MST的权值和再除以方案数,方案数显然是2mn. 按位考虑,显然应该让MST里的边高位尽量为0.那么根据最高位是0还是1将点集划分成两部分,整张图的MST就是由两部分各自的MST之间连一条 ...

  3. 【BZOJ5301】【CQOI2018】异或序列(莫队)

    [BZOJ5301][CQOI2018]异或序列(莫队) 题面 BZOJ 洛谷 Description 已知一个长度为 n 的整数数列 a[1],a[2],-,a[n] ,给定查询参数 l.r ,问在 ...

  4. [bzoj] 1588 营业额统计 || Splay板子题

    原题 给出一个n个数的数列ai ,对于第i个元素ai定义\(fi=min(|ai-aj|) (1<=j<i)\),f1=a1,求\(/sumfi\) Splay板子题. Splay讲解:h ...

  5. BZOJ1834 [ZJOI2010]network 网络扩容 【最大流,费用流】

    1834: [ZJOI2010]network 网络扩容 Time Limit: 3 Sec  Memory Limit: 64 MB Submit: 3394  Solved: 1774 [Subm ...

  6. 【贪心】【P2117】小Z的矩阵

    传送门 Description 小Z最近迷上了矩阵,他定义了一个对于一种特殊矩阵的特征函数G.对于N*N的矩阵A,A的所有元素均为0或1, 当然询问一个矩阵的G值实在是太简单了.小Z在给出一个N*N矩 ...

  7. ACE_Message_Block功能简介

    转载于:http://www.cnblogs.com/TianFang/archive/2006/12/30/607960.html ACE_Message_Block在Ace中用来表示消息的存放空间 ...

  8. POJ3974:Palindrome(Manacher模板)

    Palindrome Time Limit: 15000MS   Memory Limit: 65536K Total Submissions: 14021   Accepted: 5374 题目链接 ...

  9. 【链表】在O(1)的时间删除链表的节点

    /** * 在O(1)的时间删除链表的节点 * * @author * */ public class Solution { public static void deleteNode(Node he ...

  10. HDU3046 最大流(最小割)

    Pleasant sheep and big big wolf Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K ( ...