传送门
今天又要咕咕咕了
只能水一题
大概是知道n个人的打水时间
问总等待时间最少多少
用公式做
把a数组从大到小排
等待时间min=0a[0]+1a[1]+……+(n-1)*a[n-1]
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+10;
int a[N];
int main(){
int n;
cin>>n;
for(int i=0;i<n;i++){
cin>>a[i];
}
sort(a,a+n,greater<int>());
long long ans=0;
for(int i=0;i<n;i++){
ans+=(long long)i*a[i];
}
cout<<ans;
return 0;
}