1 solutions
-
0
C++ :
#include<iostream> #include<queue> using namespace std; priority_queue<int, vector<int>, greater<int> > p; //定义小根堆 int main(){ int n,i,x,y,s=0; cin>>n; //将赋值的数推入队列 for(i=1;i<=n;i++){ cin>>x; p.push(x); } for(i=1;i<=n-1;i++){ x = p.top(); p.pop(); y = p.top(); p.pop(); p.push(x+y); s = s + x+y; } cout<<s; return 0; }
- 1
Information
- ID
- 10539
- Time
- 1000ms
- Memory
- 16MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By