哈夫曼编码(Add All,uva 10954)
2016-09-12 17:32
399 查看
#include<bits/stdc++.h> using namespace std; typedef long long ll; struct cmp { bool operator () (ll a,ll b) { return a>b; } }; int main() { ll N; while(scanf("%lld",&N)==1&&N) { priority_queue<ll,vector<ll>,cmp>q; ll temp; for(ll i=1;i<=N;i++) { scanf("%lld",&temp); q.push(temp); } ll ans=0; while(q.size()>=2) { ll a=q.top(); q.pop(); ll b=q.top(); q.pop(); ll c=a+b; ans+=c; q.push(c); } printf("%lld\n",ans); } return 0; }
相关文章推荐
- UVA 10954 Add All 哈夫曼编码
- uva - 10954 - Add All(优先队列、哈夫曼编码思想)
- Uva - 10954 - Add All
- uva 10954 Add All
- UVA 10954 Add All
- uva 10954 add all
- UVA - 10954 - Add All (贪心)
- UVa 10954 - Add All
- UVa 10954 Add All(贪心)
- UVa 10954 - Add All
- Uva - 10954 - Add All
- uva 10954 Add All
- UVa OJ 10954 - Add All
- uva 10954 Add All(哈弗曼编码)
- 【NOIP合并果子】uva 10954 add all【贪心】——yhx
- UVA 10954 Add All 全部相加 (Huffman编码)
- UVA 10954 Add All
- UVa 10954 Add All(优先队列)
- UVA - 10954 Add All
- UVa #10954 Add All (例题8-11)