货仓选址

title: 货仓选址
date: 2023-12-19 15:06:02
tags: 排序
categories: 算法进阶指南

题目大意

在这里插入图片描述

解题思路

将数组排序后,将货仓建在 x x x 坐标处,其左侧和右侧的商家数量相同的时候最优

实现代码

#include<bits/stdc++.h>using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> PII;const int N = 6E5 + 10, mod = 1e9 + 7;int cnt[N];int main()
{int n; cin >> n;vector<int> a(n + 1);for(int i = 1; i <= n; i ++) cin >> a[i];sort(a.begin() + 1,a.end());int x = a[n / 2 + 1];ll ans = 0;for(int i = 1; i <= n; i ++){ans += abs(x - a[i]);}cout << ans << endl;return 0;
}