zoukankan      html  css  js  c++  java
  • UESTC

    这天,AutSky_JadeKAutSky_JadeK看到了nn张图片,他忍不住说道:“我TMTM社保!”。 

    每张图片有一个社保值,他可以合并两张图片,合并所得的图片的社保值是原来两张图片的社保值之和。 
    每次合并需要消耗的体力也是原来两张图片的社保值之和。 
    显然,n1n−1次合并之后,只剩下一张图片。 
    他想知道,在这个过程中,他消耗的总体力最少是多少。

    Input

    第一行包含一个整数nn, 
    第二行包含nn个整数A1,A2,,AnA1,A2,…,An,代表nn张图片的社保值。

    Output

    输出一行,包含一个整数,代表他消耗的总体力最少是多少。

    Sample Input

    3
    1 2 9
    

    Sample Output

    15
    

    Hint

    1n200001≤n≤20000, 
    1Ai2000

     1 #include <iostream>
     2 #include <cstdio>
     3 #include <queue>
     4 using namespace std;
     5 typedef long long LL;
     6 const int MAXN = 2e4 + 8;
     7 
     8 priority_queue<LL, vector<LL>, greater<LL>> pq;
     9 
    10 int main()
    11 {
    12     #ifdef LOCAL
    13     freopen("j.txt", "r", stdin);
    14     int T = 4;
    15     while(T--){
    16     #endif
    17     int n, a, i, b;
    18     LL ans = 0;
    19     scanf("%d", &n);
    20     for(i = 0; i < n; i++){
    21         scanf("%d", &a);
    22         pq.push(a);
    23     }
    24     int sz = pq.size();
    25     while(sz >= 2){
    26         a = pq.top();
    27         pq.pop();
    28         b = pq.top();
    29         pq.pop();
    30         a = a + b;
    31         ans += a;
    32         pq.push(a);
    33         sz--;
    34     }
    35 
    36     cout << ans << endl;
    37 
    38     #ifdef LOCAL
    39     cout << endl;
    40     }
    41     #endif
    42     return 0;
    43 }
  • 相关阅读:
    python开发环境安装
    python文件I/O
    python字符串方法以及注释
    python列表
    php: Can't use function return value in write context
    Notice : brew install php70
    对web开发从业者的发展方向的思考
    关于微信跨号支付
    MySQL触发器写法
    MySQL慢查询日志
  • 原文地址:https://www.cnblogs.com/z-712/p/7324219.html
Copyright © 2011-2022 走看看