天天看點

51Nod 1096 距離之和最小

#include<bits/stdc++.h>
using namespace std;

typedef long long LL;
const int maxn=10000+100;

int ans[maxn];

int main(){
  int n;
  scanf("%d",&n);
  for(int i=1;i<=n;i++)  scanf("%d",&ans[i]);
  sort(ans+1,ans+1+n);
  int locate=ans[(n+1)/2];
  LL sum=0;
  for(int i=1;i<=n;i++) sum+=abs(ans[i]-locate);
  printf("%lld\n",sum);
}      

繼續閱讀