P2514-[HAOI2010]工厂选址【贪心】
正题
题目链接:https://www.luogu.org/problemnew/show/P2514
题目大意
有一个厂,需要bbb吨煤炭,然后第jjj个矿运到该厂的运费为c0,jc_{0,j}c0,j,运行总费用为运费之和加上h0h_0h0
现在在1∼n1\sim n1∼n挑选一个建一个新厂,其余的煤矿都运到这个厂,第jjj个矿运到该厂的运费为ci,jc_{i,j}ci,j,运行费用为运费之和加上hih_ihi
求最小费用。
解题思路
很简单的一道贪心题,显然我们将最优的bbb吨运到旧厂。
我们枚举建立在哪个厂,然后对于每个矿将c0,j−ci,jc_{0,j}-c_{i,j}c0,j−ci,j进行从小到大排序,然后将最小的bbb吨运入旧厂就行了。
codecodecode
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int N=55,M=55000;
struct node{int w,num;
}d[M];
int m,b,H,n,a[M],h[N],c[N][M],ans,mins=2147483647,p;
bool cmp(node x,node y)
{return x.w<y.w;}
int main()
{scanf("%d%d%d%d",&m,&b,&H,&n);for(int i=1;i<=m;i++)scanf("%d",&a[i]);for(int i=1;i<=n;i++)scanf("%d",&h[i]);for(int i=0;i<=n;i++)for(int j=1;j<=m;j++)scanf("%d",&c[i][j]);for(int i=1;i<=n;i++){ans=H+h[i];for(int j=1;j<=m;j++)d[j]=(node){c[0][j]-c[i][j],a[j]},ans+=c[i][j]*a[j];sort(d+1,d+1+m,cmp);int k=b;for(int j=1;j<=m&&k;j++)if(k>=d[j].num)k-=d[j].num,ans+=d[j].w*d[j].num;else if(k<d[j].num)ans+=k*d[j].w,k=0;if(ans<mins)mins=ans,p=i;}printf("%d\n%d",p,mins);
}
P2514-[HAOI2010]工厂选址【贪心】相关推荐
- bzoj2426 [HAOI2010]工厂选址 读题+贪心
这个提题目描述比较模糊,读错了两遍题 首先旧工厂必须正好是b吨 然后c是每吨的价钱 然后就顺着特殊条件就很好做了 工厂地址之间互不影响,直接枚举 首先有一个工厂是固定的,而且每一吨煤不是旧就是新 所以 ...
- 补充3 需求分配和工厂选址模型(工厂和仓库同时选址)——基于java和cplex的实现
这一部分是第二部分的供应链网络的设计(二)供应链的网络设计第六部分在区域内识别潜在地点的模型. 目录 一.所需输入 二.将需求分配给现有生产设施的需求分配模型 三.生产设施选址模型 四.更复杂的.有能 ...
- 补充1 设计区域网络配置的优化模型(工厂选址模型)——基于java和cplex的实现
这一部分是第二部分的供应链网络的设计(二)供应链的网络设计第四部分设计区域网络配置的优化模型. 目录 一.所需输入 二.有能力约束的工厂选址模型 1.利用excel进行规划求解 2.利用java和cp ...
- 遗传算法在离散型工厂选址问题中的应用
一.背景介绍 最近论坛上有一些同学私信要遗传算法的代码,这两天整理了一下,希望对大家有帮助. 1.1 工厂选址问题(转自去年写的退火算法) 工厂选址问题是运筹学中的经典问题之一,它描述的是在综合考虑工 ...
- 【HAOI2010】工厂选址题解
题目描述 某地区有m座煤矿,其中第i号矿每年产量为ai吨,现有火力发电厂一个,每年需用煤b吨,每年运行的固定费用(包括折旧费,不包括煤的运费)为h元,每吨原煤从第i号矿运到原有发电厂的运费为Ci0(i ...
- 每日四题打卡-4.15:耍杂技的牛/贪心绝对值不等式-货仓选址/贪心排序不等式-排队打水/huffman哈夫曼树-合并果子
耍杂技的牛 具体:https://blog.csdn.net/qq_27262727/article/details/105515507 农民约翰的N头奶牛(编号为1..N)计划逃跑并加入马戏团,为此 ...
- 【acwing】104. 货仓选址*(贪心|绝对值不等式)
穿越隧道 绝对值不等式 如果x在a~b区间外,∣a−x∣+∣b−x∣>=∣a−b∣|a - x| + |b - x| >= |a-b|∣a−x∣+∣b−x∣>=∣a−b∣(当x在a, ...
- 和某ZYC巨佬和XXY巨佬的随机挑战2总结
前言 一切的起点在那个炎热的酷暑,菜的一批的WYCWYCWYC坐在最容易被∗*∗的左下角.这时他永远都想不到,他与巨佬之间的挑战,即将开始. 正题 规则 随机跳333到蓝题,然后写完. 完成记录 题目 ...
- [绝对值不等式] 货仓选址(绝对值不等式+贪心)
文章目录 0. 前言 1. 排序不等式+贪心 0. 前言 最最最经典的绝对值不等式问题,有很多变种.这个题是最裸的模板题了. 1. 排序不等式+贪心 104. 货仓选址 贪心思路: 按照商店坐标从小到 ...
最新文章
- 月份加日期前面用on还是in_表示时间或地点:in,on,at 的使用
- SQLServer存储过程
- 预测2019:数据中心将有哪些变化
- SLAM | 使用三维位姿图优化减少单目视觉里程计(3D Visual Odometry)定位轨迹的漂移(附源代码)
- 【Python面试】 说说Python变量、函数、类的命名规则?
- PAT (Basic Level) 1095 解码PAT准考证(模拟+stl,好题)
- 如何使用示例从Java中的类路径加载资源
- 14岁考入北大少年班,如今节衣缩食上课穿胶鞋,却慷慨资助贫困生
- 华为P50系列即将发布:麒麟9000E/9000处理器有戏?
- ORA-00845 方案解决
- python天气查询小程序加背景图_Python查询天气小程序
- 博主在哈佛评论网上的博客
- Linux系统下Apache的安装、启动等初级操作
- B2B跨境电子商务平台综合服务解决方案
- Qt 一个简单的基于mplayer的视频播放器
- json文件是什么?
- 开发随笔——花生壳错误“您的局域网服务器连接失败,请检查局域网IP与端口“
- 管理人员巡店用表-店长每日工作流程
- 爬取网易云热门音乐歌单
- 当领导招了100个初级开发去做3个资深开发的工作
热门文章
- java对象模型是什么_蓝石榴_个人博客_JVM内存结构、Java内存模型、Java对象模型...
- 单调谐回路谐振放大器等效电路分析_手把手教你如何分析三极管电路
- dhcp服务器显示主机名,linux – 当我没有在dhclient.conf中定义一个时,我的DHCP服务器如何知道我的机器的主机名?...
- php-7.1.0,PHP 7.4.0 Alpha 1 v7.4.0 官方最新版
- redis 公网ip访问_Redis很重要,怎么只允许指定IP访问?
- 后端学习 - SpringBoot
- 听红宝书译者谈Web视角下的前端开发
- [JavaWeb-MySQL]事务的基本介绍
- Network UVA - 315(Tarjan+连通性问题:求割点)
- 第一讲 工作区和GOPATH