贪心(5)

绝对值不等式 |x-a|+|x-b|>=|a-b| (中位数)

仓库选址(中位数就是最优解)

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

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

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

输入格式

第一行输入整数 N。

第二行 N 个整数 A1∼AN

输出格式

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

数据范围

1≤N≤100000

0≤Ai≤40000

输入样例:

复制代码
4
6 2 9 1

输出样例:

复制代码
12
cpp 复制代码
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+10;
int a[N];
int n;
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i];
    sort(a+1,a+1+n);
    int res=a[n/2+1];
    int num=0;
    for(int i=1;i<=n;i++)
    {
        num+=abs(res-a[i]);
    }
    cout<<num<<endl;
    return 0;
}
相关推荐
沐苏瑶2 小时前
Java 搜索型数据结构全解:二叉搜索树、Map/Set 体系与哈希表
java·数据结构·算法
ZoeJoy83 小时前
算法筑基(二):搜索算法——从线性查找到图搜索,精准定位数据
算法·哈希算法·图搜索算法
Alicx.3 小时前
dfs由易到难
算法·蓝桥杯·宽度优先
_日拱一卒3 小时前
LeetCode:找到字符串中的所有字母异位词
算法·leetcode
云泽8084 小时前
深入 AVL 树:原理剖析、旋转算法与性能评估
数据结构·c++·算法
Wilber的技术分享4 小时前
【LeetCode高频手撕题 2】面试中常见的手撕算法题(小红书)
笔记·算法·leetcode·面试
邪神与厨二病4 小时前
Problem L. ZZUPC
c++·数学·算法·前缀和
梯度下降中6 小时前
LoRA原理精讲
人工智能·算法·机器学习
IronMurphy6 小时前
【算法三十一】46. 全排列
算法·leetcode·职场和发展
czlczl200209256 小时前
力扣1911. 最大交替子序列和
算法·leetcode·动态规划