POJ 3253 Fence Repair
2015-02-01 22:27
232 查看
手动用数组模拟一个哈夫曼树即可
#include<iostream> #include<cstdio> #include<algorithm> using namespace std; int a[20005]; int main() { int n; long long ans = 0; scanf("%d", &n); for (int i = 0; i < n; i++) scanf("%d", &a[i]); while (n > 1) { int mi1 = 0, mi2 = 1; // mi1最小, mi2第二小 if (a[mi1] > a[mi2]) swap(mi1, mi2); for (int i = 2; i < n; i++) { if (a[i] < a[mi1]) { mi2 = mi1; mi1 = i; } else if (a[i] < a[mi2]) { mi2 = i; } } int t = a[mi1] + a[mi2]; ans += t; a[mi1] = t; a[mi2] = a[n - 1]; n--; } printf("%lld\n", ans); }
相关文章推荐
- POJ 3253 Fence Repair (优先队列)
- POJ 3253 Fence Repair(优先队列+思维贪心)(哈夫曼树算法)
- POJ 3253 Fence Repair
- [poj-3253]Fence Repair 题解
- POJ 3253 Fence Repair(构造Huffman Tree)
- POJ 3253 Fence Repair
- POJ 3253 Fence Repair(哈夫曼树)
- poj 3253 Fence Repair(哈夫曼+二叉堆)
- POJ 3253 Fence Repair(优先队列)
- POJ 3253 Fence Repair【哈夫曼树】
- 优先队列——Poj 3253 Fence Repair
- poj 哈夫曼树相关之3253 Fence Repair
- poj 3253 Fence Repair (优先队列)
- 【POJ】[3253]Fence Repair
- Fence Repair(POJ--3253
- POJ-3253 Fence Repair
- POJ_3253_Fence Repair
- 优先队列 POJ 3253 Fence Repair
- POJ 3253 Fence Repair (割木头,贪心_优先队列)
- poj 3253 Fence Repair