思路:绝对值不等式,中位数就是最优解。
相关题目:1.一维扩展到二维 【3167:星星还是树】
*2.扩展到d维需要用模拟退火算法。(用不到)
#include<iostream>
#include<algorithm>
using namespace std;
const int N = 100010;
int n;
int a[N];
int main()
{
cin >> n;
for (int i = 0; i<n;i++) cin >> a[i];
sort(a,a+n);
int res=0;
for(int i=0;i<n;i++) res +=abs(a[i]-a[i/2]);
cout << res << endl;
return 0;
}