已采纳 汪恺恒 中级启示者 这题要用堆和队列,建议先打好基础 核心 for(reg int i=1;i<=n-1;i++){ //求解 x=p.top(); //取出最小的两个元素 p.pop(); y = p.top(); p.pop(); p.push(x + y); //将它们的和入队 ans = ans + x + y; }