思路
- 时间从小到大排序;
- 总等待时间为 t1(n-1)+t2(n-2)+…+tn*n
代码
#include<iostream>
#include<cstdio>
#include<algorithm>
using namespace std;
const int N=1e5+10;
typedef long long LL;
int n;
int arr[N];
int main(){
scanf("%d",&n);
for(int i=0;i<n;i++) {
int x;
scanf("%d",&x);
arr[i]=x;
}
sort(arr,arr+n);
LL res;
for(int i=0;i<n;i++){
res+=arr[i]*(n-i-1);
}
printf("%lld\n",res);
return 0;
}