这道题目到底是什么意思???

如果是哈夫曼树的话。按描述来说。根节点开始算第一天。所以样例是1 10答案10

那么如果是3 1 2 9的话,答案应该是27吧???为什么不对呢??不是在原先哈夫曼树的基础上所有的距离+1了吗?为什么答案不对?

2 条评论

  • @ 2015-06-07 15:23:55

    蒟蒻对着AC 程序看了半天不知道他在干嘛………………
    如果您能看懂的话麻烦说一声好咯。

    /*
    * main.cpp
    *
    * Created on: 2013-9-11
    * Author: gyf
    */

    #include <cstdlib>
    #include <cstdio>
    #include <queue>
    #define rep(i, a, b) for (int i = a; i <= b; ++i)
    using namespace std;

    int main()
    {
    // freopen("disease.in", "r", stdin);
    // freopen("disease.out", "w", stdout);

    int n;
    priority_queue<long long> pq;
    scanf("%d", &n);
    rep(i, 1, n)
    {
    int x;
    scanf("%d", &x);
    pq.push(-x);
    }
    long long ans = 0;
    rep(i, 1, n - 1)
    {
    long long x = -pq.top();
    pq.pop();
    x -= pq.top();
    pq.pop();
    ans += x;
    pq.push(-x);
    }
    printf("%lld\n", ans);

    fclose(stdin);
    fclose(stdout);
    return 0;
    }

  • @ 2015-06-04 18:30:27

    求大牛解惑

  • 1

信息

ID
1837
难度
6
分类
(无)
标签
(无)
递交数
51
已通过
14
通过率
27%
被复制
2
上传者