```
#include<bits/stdc++.h>
using namespace std;
const int N=10010;
typedef long long ll;
ll n,a[N],ans;
int main(){
scanf("%lld",&n);
for(int i=1;i<=n;i++) scanf("%lld",&a[i]);
sort(a+1,a+n+1);
for(int i=2;i<=n;i++)
{
ans+=a[i-1]+a[i];
a[i]+=a[i-1];
for(int j=i+1;j<=n;j++)
{
if(a[j]<a[j-1]) swap(a[j],a[j-1]);
else break;
}
}
printf("%lld",ans);
return 0;
}
```
by luogu_gza @ 2022-07-25 15:54:34
@[acwing_gza](/user/301255) 为啥要这样Orz
by wh_1024 @ 2022-08-07 20:22:35
@[acwing_gza](/user/301255) 懂了,OOOOrrrrZZZZZ
by wh_1024 @ 2022-08-07 20:37:37
@[wh_1024](/user/648053) 每一次都要排序一次。
```
比如说
1 2 3 4 5
直接弄的话,(1+2)+(1+2+3)+(1+2+3+4)+(1+2+3+4+5)=3+6+10+15=34
每一次都排序:
1+2=3
3 3 4 5
3+3=6
6 4 5->4 5 6
4+5=9
9 6->6 9
6+9=15
3+6+9+15=33
少了1
```
by luogu_gza @ 2022-08-07 20:44:03