fork(1) download
  1. #include <cstdio>
  2. #include <queue>
  3.  
  4. using namespace std;
  5. typedef long long int L;
  6.  
  7. int main(void){
  8.  
  9. priority_queue<L>pq;
  10.  
  11. int i,n;
  12. L x,y,ans=0,trash;
  13.  
  14. scanf("%d%lld",&n,&trash);
  15. for(i=0;i<n;i++){scanf("%lld",&x);pq.push(-x);}
  16. for(i=1;i<n;i++){
  17. x=pq.top();pq.pop();
  18. y=pq.top();pq.pop();
  19. ans-=x+y;
  20. pq.push(x+y);
  21. }
  22. printf("%lld\n",ans);
  23. return 0;
  24. }
  25.  
Success #stdin #stdout 0s 3280KB
stdin
4 9
2 1 3 3
stdout
18