货仓选址(贪心)

2023-11-12

我之前在多篇博客中提到货仓选址,却发现从未仔细介绍过货舱选址,今天就来好好说一下货舱选址这个问题。

 就以这个图来说,我们假设Ap+1>=x>=Ap,那么距离之和也就是(x-A1)+(x-A2)+……+(x-Ap)+(A(p+1) -x)+(A(p+2) -x)+……+(An-x)=(2p-n)x+A(p+1)+A(p+2)+……+An-A1-A2-……-Ap,仔细观察这个自变量为x的函数,发现这是一个一次函数,这个时候我们分类讨论一下,若2p-n>0,为了使总和尽量小,我们应尽量使x尽量小,也就是在Ap处,这个时候x就满足Ap>=x>=Ap-1,这个时候按照同样的方式进行分析,不难发现,最后当2p-n=0时,这个函数取得最小值,所以这个货仓应选在中间位置(即货仓左边和右边的商店数目一样多),这个是一个比较常用的模型,建议大家熟练掌握

下面是代码:

#include<cstdio>
#include<iostream>
#include<cstring>
#include<vector>
#include<algorithm>
#include<map>
#include<cmath>
#include<queue>
using namespace std;
const int N=100000;
int a[N];
int main()
{
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
		scanf("%d",&a[i]);
	sort(a+1,a+n+1);
	long long ans=0;
	for(int i=1;i<=n;i++)
		ans+=abs(a[i]-a[(n+1)>>1]);
	printf("%lld",ans); 
	return 0;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

货仓选址(贪心) 的相关文章

  • 蓝桥杯备赛:贪心

    例题1 最少砝码 问题描述 你有一架天平 现在你要设计一套砝码 使得利用这些砝码可以称出任意 小于等于 NN 的正整数重量 那么这套砝码最少需要包含多少个砝码 注意砝码可以放在天平两边 输入格式 输入包含一个正整数 N 输出格式 输出一个整
  • Python:每日一题之最少砝码

    问题描述 你有一架天平 现在你要设计一套砝码 使得利用这些砝码可以称出任意 小于等于 N 的正整数重量 那么这套砝码最少需要包含多少个砝码 注意砝码可以放在天平两边 输入格式 输入包含一个正整数 N 输出格式 输出一个整数代表答案 样例输入
  • 蓝桥杯青少组python:第十三届省赛第一场

    选择题 1 下列二进制中最大数是 A 110 B 1010 C 1100 D 1001 2 以下方法 不是对文件读操作的是 A readline B readlines C readtext D read 3 以下对turtle库中函数描述
  • 蓝桥杯:基础练习 特殊回文数(java实现)

    问题描述 123321是一个非常特殊的数 它从左边读和从右边读是一样的 输入一个正整数n 编程求所有这样的五位和六位十进制数 满足各位数字之和等于n 输入格式 输入一行 包含一个正整数n 输出格式 按从小到大的顺序输出满足条件的整数 每个整
  • 蓝桥杯---貌似化学---逆矩阵

    试题 算法训练 貌似化学 资源限制 时间限制 1 0s 内存限制 256 0MB 问题描述 现在有a b c三种原料 如果他们按x y z混合 就能产生一种神奇的物品d 当然不一定只产生一份d 但a b c的最简比一定是x y z 现在给你
  • 【Java】用do-while循环,实现猜数字。

    package TcmStudy day05 import java util Scanner public class DoWhileText01 public static void main String args Scanner i
  • 递归与分治

    递归的定义 程序调用自身的编程技巧称为递归 递归做为一种算法在程序设计语言中广泛应用 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法 它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解 递归策略只需少量
  • JAVA中的JeeSite框架基本简介

    JAVA的主流框架是很多的 每一个框架都有它的适用项目和条件 所有JAVA程序员都熟悉的肯定是常用的四大框架 而JeeSite这个框架使用的人却不是很多 但是这个框架却有它的独到之处 稳定 高效 调用方便 这里对JeeSite做一个简单的介
  • openGL之API学习(一九三)glGenTextures

    生成纹理单元名 单元名不一定是连续的 但是没有使用的 单元名是相对GL TEXTURE0的 对于单元名1 其实是GL TEXTURE0 1 glGenTextures产生的是一个比较小的整数id 纹理单元名 glActiveTexture激
  • 蓝桥杯.卡片(模拟)

    Question Result 3181 Solve 直接模拟暴力 初始化卡片数量为2021 去模拟拼数的过程 注意点的话 我是先去判断卡片还有没有 再去减一 所以输出结果也有一个减一 因为一旦说卡片没有了 就意味着当前这个数字拼不成了 C
  • Python蓝桥杯 基础练习 十六进制转八进制

    def huan n n format int n 16 o print n x int input for i in range 1 x 1 n input huan n format o 将数据格式化为八进制 int n 16 返回字符
  • 蓝桥杯最长不下降子序列,线段树python

    问题描述 给定一个长度为 N 的整数序列 A1 A2 AN 现在你有一次机会 将其 中连续的K 个数修改成任意一个相同值 请你计算如何修改可以使修改后的数 列的最长不下降子序列最长 请输出这个最长的长度 最长不下降子序列是指序列中的一个子序
  • c++汉诺塔蓝桥杯

    总时间限制 10000ms 单个测试点时间限制 1000ms 内存限制 262144kB 描述 小蓝很喜欢玩汉诺塔游戏 游戏中有三根柱子 开始时第一根柱子上有 n 个圆盘 从上到下圆盘的大小依次为 1 到 n 每次 可以将一个盘子从一根柱子
  • 【算法竞赛】Python快速入门指南

    该指南由GPT4编写 用于快速入门蓝桥杯Python组 当然 仅限入门而已 本指南由GPT 4生成 我只是负责引导 并对内容进行整理和补充 一直以来我都是使用C 作为算法竞赛语言 但是奈何C 组太卷 自己又太菜 于是另谋他路 Prompt模
  • 三个小朋友分糖果

    题目描述 有甲 乙 丙三个小朋友 甲有x粒糖果 乙有y粒糖果 丙有z粒糖果 现在他们做一个游戏 从甲开始 将自己的糖平均分三份 自己留一份 其余两份分别给乙与丙 多余的糖果自己吃掉 然后乙与丙也依次这样做 问最后甲 乙 丙三人各有多少粒糖果
  • 每日一练-仓库日志

    仓库日志 题目描述 解题思路 Python源码 Summary Date 2023年1月9日 Author 小 y 同 学 Classify 蓝桥杯每日一练 Language Python 题目描述 题意 M海运公司最近要对旗下仓库的货物进
  • 2021蓝桥杯模拟赛-跳跃

    题目 题目链接 题解 动态规划 算是比较基础的状态方程和状态定义 但是难点在于处理负权重的情况 代码 include
  • 蓝桥杯 填字母游戏(博弈论)

    小明经常玩 LOL 游戏上瘾 一次他想挑战K大师 不料K大师说 我们先来玩个空格填字母的游戏 要是你不能赢我 就再别玩LOL了 K大师在纸上画了一行n个格子 要小明和他交替往其中填入字母 并且 1 轮到某人填的时候 只能在某个空格中填入L或
  • G - Ginger的NB数(二分)

    G Ginger的NB数 SDUT OnlineJudge include
  • 如何查看崩溃日志

    目录 描述 思路 查看ipa包崩溃日志 简单查看手机崩溃信息几种方式 方式1 手机设置查看崩溃日志 方式2 Xocde工具 方式3 第三方软件克魔助手 环境配置 实时日志 奔溃日志分析 方式四 控制台资源库 线上崩溃日志 线上监听crash

随机推荐

  • 服务器基础知识

    一 服务器的概念 服务器是计算机的一种 它比普通的计算机运行的更快 负载更高 价格更贵 服务器在网络中为其他的客户机 PC机 智能手机 ATM等终端 提供计算或者应用服务 服务器具有高速的CPU运算能力 长时间的可靠运行 强大的I O外部数
  • QTableWidget用法总汇

    1 QTableWidget不能在mainwindow中随主窗口的大小变化 解决 在表格外部添加布局 代码 tableWidget new QTableWidget tableWidget gt setObjectName QString
  • SpringCloud - Spring Cloud 之 Apollo Config携程阿波罗配置中心(二十一)

    由于Spring Cloud自带的Config 需要配合 Bus 使用 且不能实时刷新 因此市面上出现了很多开元的配置中心 市面上开源的配置中心 Apollo 阿波罗 携程框架部门研发的分布式配置中心 能够集中化管理应用不同环境 不同集群的
  • 图像质量评价指标及MATLAB程序

    指标名称 RMSE 针对一个volume的程序 M 230 行数 N 140 列数 P 11 切片数 计算RMSE volume P origin vector p P recon vector P recon MNP M N P nume
  • 小美的外卖订单编号---牛客周赛 Round 11

    include
  • 职场新人,如何提升自身竞争力?

    在当前就业形势下 如何提高应届生在职场中的竞争力 具有哪些有效的方法和策略可供选择 这是一个备受关注的热点话题 哪些方面会对应届生的职场发展起到关键的推动和支撑作用呢 欢迎大家积极分享你们是如何提升自己的职场竞争力 给即将步入社会的同学一些
  • stm32f103&gd32的usb虚拟串口,打印类printer组合设备

    stm32f103 gd32的usb虚拟串口 打印类printer组合设备 TOC stm32f103 gd32的usb虚拟串口 打印类printer组合设备 由于gd32和stm32f10x系列库和usb库都可以兼任 所以选择st的usb
  • window.showModalDialog() 过时替代方案

    一 window showModalDialog 方法说明 window showModalDialog 方法的作用是创建和展示一个指向特定网页的模态对话框 该方法已经过时 特性已经从 Web 标准中删除 虽然一些浏览器目前仍然支持它 但也
  • 最近很火的ChatGPT和GPT4

    ChatGPT 全名 Chat Generative Pre trained Transformer 美国OpenAI研发的聊天机器人程序 于2022年11月30日发布 ChatGPT是人工智能技术驱动的自然语言处理工具 它能够通过理解和学
  • 深度学习-ubuntu18.04+RTX3080+cuda11.2+cudnn8.1.0下安装polarstream全纪录

    安装 创建一个python3 7的虚拟环境 conda create name polarstream python 3 7 激活虚拟环境 source activate polarstream 以下操作均在虚拟环境中进行 安装与cuda和
  • linxu命令个人使用总结

    find命令查找文件 find name 文件名 curl命令访问网址 cur url sh命令开启服务 sh X sh 进入对应文件夹后 直接输入sh X sh 不在X sh对应文件夹下 则用file path ps A 显示所有进程 p
  • spi,ClassLoader,双亲委托模式

    转载 https www cnblogs com hiyujie p wo xueJava1ClassLoader yu shuang qin wei tuo mo sh html 1 ClassLoader分类 Java虚拟机会创建三类C
  • 2013最受欢迎儿童安全座椅品牌评选结果揭晓

    亲贝网讯 1月17日消息 近日 2013最受欢迎儿童安全座椅品牌 评选结果揭晓 榜单中 宝得适 葛莱 好孩子 kiddy concord 智高 斯迪姆 欧贝 宝贝第一 艾乐贝贝共10家儿童安全座椅品牌最终摘得2013年最受欢迎儿童安全座椅品
  • 苹果iOS App上架流程,非iOS开发人员上架教程

    iOS应用上线发布流程一般包含相关证书文件的配置 Xcode的设置 App Store Connect填写App的相关信息 ipa包上传 审核结果以及相关邮件回复 相关证书文件的配置与Xcode的设置一般由iOS开发人员来完成 下面只讲拿到
  • linux下正确卸载rpm包

    查看应用 elasticsearch 为例 rpm qa grep i elasticsearch 执行结果 root bogon elasticsearch head rpm qa grep i elasticsearch elastic
  • 解决this作用域不够的问题

    先看下方的vue代码 主要功能是点击按钮 实现将笑话渲染到页面上 div div
  • 单链表和循环单链表的基本操作

    单链表和循环单链表的基本操作 2021 8 23 lkm 该项目里面包含单链表操作以及循环单链表操作 注意 循环单链表判断条件为p L include
  • 如何读取resources目录下的文件路径(九种方式)

    前情提要 本文中提供了九种方式获取resources目录下文件的方式 其中打印文件的方法如下 根据文件路径读取文件内容 param fileInPath throws IOException public static void getFi
  • children和 siblings的菜单选择

  • 货仓选址(贪心)

    我之前在多篇博客中提到货仓选址 却发现从未仔细介绍过货舱选址 今天就来好好说一下货舱选址这个问题 就以这个图来说 我们假设Ap 1 gt x gt Ap 那么距离之和也就是 x A1 x A2 x Ap A p 1 x A p 2 x An