[bzoj2424] 订货
2424: [HAOI2010]订货
Time Limit: 10 Sec Memory Limit: 128 MB
Submit: 1080 Solved: 733
[Submit][Status][Discuss]
Description
Input
Output
只有1行,一个整数,代表最低成本
Sample Input
2 4 8
1 2 4
Sample Output
HINT
Source
Day1
题解
明明是个裸题 还参考了题解 唉太弱了啊
不要想复杂 并不用拆点干嘛的 是个大水题
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<queue>
#define inf 0x7ffffff
using namespace std;
int n,m,s;int cnt=1;
struct edge{int to,flow,cost,next;}e[1000001];
queue<int>q;int start=0,end=1001;int min_cost=0;
int head[1005],from[1005],d[1005],flag[1005];
void ini(int x,int y,int flow,int cost){e[++cnt].to=y;e[cnt].flow=flow;e[cnt].cost=cost;e[cnt].next=head[x];head[x]=cnt;}
void insert(int x,int y,int f,int c){ini(x,y,f,c);ini(y,x,0,-c);}
bool spfa(){memset(d,127,sizeof(d));d[start]=0;flag[start]=1;while(!q.empty()){int k=q.front();q.pop();flag[k]=0;for(int i=head[k];i;i=e[i].next){int kk=e[i].to;if(e[i].flow&&d[kk]>d[k]+e[i].cost){d[kk]=d[k]+e[i].cost;from[kk]=i;if(!flag[kk]){flag[kk]=1;q.push(kk);}}}}return d[end]<inf;
}
void mcf(){while(spfa()){int mn=inf;for(int i=from[end];i;i=from[e[i^1].to])mn=min(mn,e[i].flow);min_cost+=d[end]*mn;for(int i=from[end];i;i=from[e[i^1].to]){e[i].flow-=mn;e[i^1].flow+=mn;}}
}
int main(){scanf("%d%d%d",&n,&m,&s);int x;for(int i=1;i<=n;i++){scanf("%d",&x);insert(i,end,x,0);} for(int i=1;i<=n;i++){scanf("%d",&x);insert(start,i,inf,x);}for(int i=1;i<n;i++)insert(i,i+1,s,m);mcf();printf("%d",min_cost);return 0;
}
[bzoj2424] 订货相关推荐
- bzoj2424 订货
Description 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付存贮费用m,假定第一月月初的库存量为零,第n月月底的库存量也为 ...
- [HAOI2010]订货 洛谷2517 BZOJ2424
题目描述 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付存贮费用m,假定第一月月初的库存量为零,第n月月底的库存量也为零,问如何安排 ...
- BZOJ2424: [HAOI2010]订货
从0到i建容量为U[i],费用为零的边.(订货) 从i到n+1容量无限,费用为的的d[i]边.(售出) 从i到i+1容量为S,费用为m的边.(存贮) 然后跑费用流就好了. #include<cs ...
- bzoj2424 [HAOI2010]订货 费用流
比较直观的费用流模型 码: #include<iostream> #include<cstdio> #include<queue> #include<cstr ...
- BZOJ2424 [HAOI2010]订货
裸的费用流.... 建图方法:把每个月抽象成一个点 S向每个点连边,费用为当月购进价,容量无限大:每个点向T连边,费用为0,容量为当月卖出量 每个点向后一个月的点连边,费用为仓库储存费用m,容量为仓库 ...
- java收费对.net_网上订货商城系统是怎么收费的?大概需要多少费用?
2020年上半年的特殊情况让不少商贸公司意识到了网上商城订货系统的重要性,现在的互联网市场上商城订货系统的开发公司为数不少,但专业做商城订货系统的开发商是可以数得过来的,不少客户会比较想了解网上商城订 ...
- 【HAOI2010】订货
可以DP也可以是费用流,然而被我用非常简单的DP破了[开心] 原题: 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付存贮费用m,假定 ...
- c语言编写订货系统,学位论文_基于c语言的仓库订货系统的仿真.doc
学位论文_基于c语言的仓库订货系统的仿真 本科毕业论文(设计.创作) 题目: 基于C语言的仓库订货系统的仿真 学生姓名: 学号: 所在系院: 信息与通信技术系 专业: 电子信息工程 入学时间: 201 ...
- 订货(bzoj 2424)
Description 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付存贮费用m,假定第一月月初的库存量为零,第n月月底的库存量也为 ...
最新文章
- java 注解报错_java注解验证接收参数 返回注解字段的错误
- 朴素贝叶斯算法python sklearn实现_朴素贝叶斯算法优化与 sklearn 实现
- 02027_线程池练习:返回两个数相加的结果
- 华硕无线网卡测试软件,家用无线网卡王者 华硕PCE-AC88 双频3100网卡测试
- 多行并一行显示的两种方式(DB2)
- 探秘HDFS —— 发展历史、核心概念、架构、工作机制 (上)| 博文精选
- 【渝粤教育】国家开放大学2018年秋季 0631-21T动物常见病防治 参考试题
- 7-31 查验身份证 (15 分)
- 设置NumericStepper控件不可用状态的上下箭头颜色。
- VMware虚拟机安装win10卡顿优化
- Chrome有些网站打不开,但是其他浏览器可以打开,Chrome无痕模式有事也可以打开。解决思路。
- Ubuntu 18.04.01安装五笔输入法
- Android网络请求三篇
- GIMP( GNU IMAGE MANIPULATION PROGRAM)
- SEO网络营销培训机构都是如何给新手SEO培训的,新手SEO看完就知道套路,以后就不会上当受骗
- 期货基础知识(竞价,定价,保证金计算)
- 二维码扫描枪是如何在我们生活中助力移动支付成为主流
- XILINX DDR3 VIVADO(二)写模块
- 直击人心的数据可视化设计作品
- 机器学习笔记 (第一周)