题目大意:总结起来,相当于给出n个数,求这n个数的任意两个数的差值的绝对值的总和
解题思路:首先,要明确一点,这n个数的输入顺序对结果是没有影响的,为了方便计算,将这些数按照升序排列。
代码如下:
# include <iostream>
# include <algorithm>
using namespace std;
long long int a[100001];
int main ()
{
int N,i,j;
long long int sum=0;
scanf("%d",&N);
for(i=1;i<=N;i++)
{
scanf("%d",&a[i]);
}
sort(a,a+N+1);
for(i=1;i<N;i++)
{
j=N-i;
sum+=j*(a[j+1]-a[i]);
}
cout<<sum*2<<endl;
return 0;
}