AcWing 104. 货仓选址

2023-11-04

题目

在一条数轴上有 N 家商店,它们的坐标分别为 A1~AN。

现在需要在数轴上建立一家货仓,每天清晨,从货仓到每家商店都要运送一车商品。

为了提高效率,求把货仓建在何处,可以使得货仓到每家商店的距离之和最小。

输入格式:

第一行输入整数N。

第二行N个整数A1~AN。

输出格式:

输出一个整数,表示距离之和的最小值。

数据范围

1≤N≤100000,
0≤Ai≤40000

输入样例:

4
6 2 9 1

输出样例:

12

思路分析:

这道题可以用绝对值不等式的结论 ∣ x 1 − a ∣ + ∣ x 2 + a ∣ ⩾ ∣ x 1 + x 2 ∣ \left| x_1-a \right|+\left| x_2+a \right|\geqslant \left| x_1+x_2 \right| x1a+x2+ax1+x2即将序列从小到大排序后当n为奇数的时候距离和最小所对应的点在最中间的那个数,如果n为偶数则最小距离和所对应的点在最中间的两个数中的任意一个。即在代码中表示为array[n / 2]。

代码:

#include <bits/stdc++.h>

using namespace std;

int main(){
    int n, ave;
    cin >> n;
    vector<int> array(n);
    for(int i = 0; i < n; i++) cin >> array[i];
    sort(array.begin(), array.end());
    for(int i = 0; i < n; i++) ave += abs(array[i] - array[n / 2]);
    cout << ave << endl;
    return 0;
}

AcWing题解
题目链接

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

AcWing 104. 货仓选址 的相关文章

  • Java性能监控和故障诊断可视化工具之jmc

    前面的文章中我们介绍了jvisualvm 本篇文章我们来介绍下目前为止功能最为强大的可视化工具jmc jmc Java Mission Control 是jdk1 7开始引入的JVM监控工具 jmc可视化监控工具主要包含两大块内容 1 JM

随机推荐

  • 以transformAssociateToMap函数为例,分析LeGO-LOAM的坐标系统

    文章目录 LeGO LOAM采用的坐标轴体系 transformAssociateToMap函数剖析 公式推导 LeGO LOAM坐标变换解析 LeGO LOAM采用的坐标轴体系 LeGO LOAM的旋转顺序是固定轴ZXY而LeGO LOA
  • python文字转语音

    你觉得将文字转成语音需要写多少行代码才能完成 我用了7行 你呢 coding utf 8 import sys reload sys sys setdefaultencoding utf 8 import pyttsx engine pyt
  • STM32 SPI对存储芯片发送写是能命令后一直忙等待

    我采用CUBE配置的SPI外设 对NSS引脚选择了硬件输出 这种方式对读取命令没有影响 但是对写命令有 当我发送写是能命令后 读取状态寄存器的值一直都是忙 我猜测这可能是硬件控制NSS引脚后 对于HAL SPI Transmit等命令 内部
  • Github+Typora - - 我理想中的markdown云笔记神器

    这篇文章记录我如何解决市面上markdown笔记软件的弊端 扬长避短 为喜爱markdown软件的朋友出一份力 首先 我们先看下这篇文章 介绍了我们当下markdown软件多多少少有些不完美的状况 让我们虽然不喜欢 但也只可 欲罢不能 的尴
  • 使用python在wordpress博客网站添加新文章示例

    Wodrepress是最近很火的一个博客平台 利用它可以快速搭建各种网站 下面我是利用xmlrpc编程接口在wordpress添加文章的示例代码 import datetime xmlrpclib wp url http www examp
  • Camera和Image sensor技术基础笔记(5) -- HDR相关技术

    动态范围 Dynamic Range 动态范围最早是信号系统的概念 一种信号系统的动态范围定义为 最大的信号不失真的电平和噪声电平的差 在实际场景中 多用分贝 dB 为单位来衡量一个信号系统的动态范围 以上说法可能有些抽象 来看两个例子 1
  • ggplot2读书笔记2:ggplot()的基本用法以及如何绘制几何对象

    Getting Started with ggplot2 ggplot 基本用法 由ggplot2所制得图形有三个重要的组成部分 1 数据 2 数据和视觉变量属性之间的映射 aesthetic mappings 3 呈现数据结果的图层 一般
  • JS中的prototype

    JS中的phototype是JS中比较难理解的一个部分 本文基于下面几个知识点 1 原型法设计模式 在 Net中可以使用clone 来实现原型法 原型法的主要思想是 现在有1个类A 我想要创建一个类B 这个类是以A为原型的 并且能进行扩展
  • 绝地救生error_30种面向前端开发人员的救生工具

    绝地救生error As the functionalities of web apps keep getting ever more sophisticated and complex web developers need flexib
  • 【2】数据湖架构中 Iceberg 的核心特性

    在业界的数据湖方案中有 Hudi Iceberg 和 Delta 三个关键组件可供选择 一 Iceberg 是什么 Iceberg 官网中是这样定义的 Apache Iceberg is an open table format for h
  • JS封装计算1~100之间所有整数的总和与平均值

    function getSum var sum 0 for i 0 i lt 100 i sum i console log 1 100所有数和为 sum console log 1 100所有数和的平均值为 sum 100 getSum
  • Intellij idea 导入 jdbc

    第一步 去官网https dev mysql com downloads connector j 下载驱动程序 第二步 解压压缩包 记住路径 第三步 打开你的idea工程 打开Project Structure Modules gt gt
  • RabbitMQ - 死信、TTL原理、延迟队列安装和配置

    目录 一 死信交换机 1 1 什么是死信交换机 1 2 TTL 1 2 1 什么是 TTL 1 2 2 通过 TTL 模拟触发死信 二 延迟队列 2 1 什么是延迟队列 2 2 配置延迟队列插件 2 2 1 延迟队列配置 a 下载镜像 b
  • pyhive报错Could not start SASL: b‘Error in sasl_client_start (-4) SASL(-4)

    python3连接hive 1 安装对应依赖 2 连接hive 3 常见报错 1 安装对应依赖 pip install sasl pip install thrift pip install thrift sasl pip install
  • 快速上手Cruisecontrol

    1 Cruisecontrol的概述 CruiseControl是一种持续集成过程的框架 包括了邮件通知 ant和各种源码控制工具的插件 并提供web接口 用于查看当前和以前的build的结果 2 Cruisecontrol的安装 2 1
  • windows下免费本地部署类ChatGpt的国产ChatGLM-6B

    ChatGLM 6B 是一个开源的 支持中英双语的对话语言模型 基于 General Language Model GLM 架构 具有 62 亿参数 结合模型量化技术 用户可以在消费级的显卡上进行本地部署 INT4 量化级别下最低只需 6G
  • 万字长文,SpringSecurity

    思维导图如下 RBAC权限分析 RBAC 全称为基于角色的权限控制 本段将会从什么是RBAC 模型分类 什么是权限 用户组的使用 实例分析等几个方面阐述RBAC 思维导图 绘制思维导图如下 什么是RBAC RBAC 全称为用户角色权限控制
  • javascript算法之数组反转浅谈

    本文主要介绍了javascript算法之数组反转 文章围绕主题展开详细的内容介绍 具有一定的参考价值 需要的小伙伴可以参考一下 1 数组反转 1 1 leecode题目 旋转数组 给你一个数组 将数组中的元素向右轮转 k 个位置 其中 k
  • Servlet是不是线程安全的?

    首先在servlet中的方法 三个重要方法 1 init 进行资源的加载 2 service 处理请求 根据请求方式 调用doGet或者doPost 3 destroy 进行资源的释放 servlet是单实例的 假如在处理请求时候 多线程访
  • AcWing 104. 货仓选址

    题目 在一条数轴上有 N 家商店 它们的坐标分别为 A1 AN 现在需要在数轴上建立一家货仓 每天清晨 从货仓到每家商店都要运送一车商品 为了提高效率 求把货仓建在何处 可以使得货仓到每家商店的距离之和最小 输入格式 第一行输入整数N 第二