合并果子
思路
优先队列(堆),默认为升序
import java.util.PriorityQueue;
import java.util.Queue;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
int n = cin.nextInt();
Queue<Long> q = new PriorityQueue<>();
for(int i=0; i<n; i++){
long c = cin.nextInt();
q.add(c);
}
long ans = 0;
while(q.size() >= 2){
long t = (q.poll() + q.poll());
ans += t;
q.add(t);
}
System.out.println(ans);
}
}