设那个点位置为X,其左边有L个点,右边有R个点,如果L>R,则向左移动一个单位,则减小(L-R)的距离,同理 ,R > L ,则向右移动减(R-L),so,最优位置为R = L ,即奇数中点,偶数中点两个点任意一个
//这样子还不了解,自己暴力找规律吧(例如我)
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
const int MA = 1e5+10;
int a[MA];
int main()
{
int n;
scanf("%d",&n);
for (int i = 0 ; i < n; i++) scanf("%d",&a[i]);
sort(a,a+n);
int kk = a[(n/2)];
int sum = 0;
for (int i = 0; i < n; i++) sum += abs(a[i]-kk);
printf("%d",sum);
return 0;
}