当前位置: 首页 > news >正文

算法进阶指南 货仓选址

问题描述

在一条数轴上有 N 家商店,它们的坐标分别为 A₁, A₂, ..., Aₙ

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

为了提高效率,请你计算应将货仓建立在何处,才能使得货仓到每家商店的距离之和最小


输入格式

  • 第一行输入一个整数 N,表示商店数量。
  • 第二行输入 N 个整数 A₁ ∼ Aₙ,表示每家商店在数轴上的位置。

输出格式

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


数据范围

  • 1 ≤ N ≤ 100000
  • 0 ≤ Aᵢ ≤ 40000

输入样例

4
6 2 9 1

输出样例

12

c++代码

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;

ll N, ans = 0;
ll arr[100001];

int main() {
    scanf("%lld", &N);
    for (int i = 1; i <= N; i++) {
        scanf("%lld", &arr[i]);
    }
    sort(arr + 1, arr + N + 1);
    ll left = N / 2, right = left + 1;
    if (N % 2 != 0) right++;
    while(left >= 0 && right <= N) {
        ans += (arr[right] - arr[left]);
        left--, right++;
    }
    printf("%lld", ans);
    return 0;
}//by wqs
http://www.dtcms.com/a/118079.html

相关文章:

  • redis导入成功,缺不显示数据
  • 华为ensp中路由器IPSec VPN原理及配置命令(超详解)
  • Python爬虫教程013:使用CrawlSpider爬取读书网数据并保存到mysql数据库
  • Windows 系统下用 VMware 安装 CentOS 7 虚拟机超详细教程(包含VMware和镜像安装包)
  • 基于 springboot 的在线考试系统
  • React中的跨组件通信
  • 助力三农服务平台设计与实现
  • NVR接入录像回放平台EasyCVR用智能分析高新技术赋能,打造营业厅人员/物品安全的堡垒
  • 代码随想录算法训练营第五十二天|图论专题: 101. 孤岛的总面积、102. 沉没孤岛、103. 水流问题、104. 建造最大岛屿
  • 接口异常数组基础题
  • Linux 系统 SVN 源码安装与配置全流程指南
  • python中的in关键字查找的时间复杂度
  • 神经网络基础(NN)
  • Multi-class N-pair Loss论文理解
  • acwing.蛇形矩阵
  • java+postgresql+swagger-多表关联insert操作(六)
  • golang 计时器内存泄露问题 与 pprof 性能分析工具
  • VTK知识学习(51)- 交互与Widget(二)
  • 无人机双频技术及底层应用分析!
  • C++学习之三次握手四次挥手
  • 从零设计React-Markdown组件的实现方案
  • MySQL数据库经典面试题解析
  • vue3实战一、管理系统之实战立项
  • Java的Selenium的特殊元素操作与定位之验证码
  • 实用数字图像处理与分析系统
  • 【STM32】综合练习——智能风扇系统
  • 进程内存分布--之showmap呈现memory-layout.cpp内存分布
  • Java设计模式之抽象工厂模式:从入门到架构级实践
  • 经典频域分析法(Bode图、Nyquist判据) —— 理论、案例与交互式 GUI 实现
  • Java 面试系列:Java 中的运算符和流程控制 + 面试题