麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

51Nod - 1117 優先隊列

2019-11-14 12:31:27
字體:
來源:轉載
供稿:網友

題意:

一位老木匠需要將一根長的木棒切成N段。每段的長度分別為L1,L2,......,LN(1 <= L1,L2,…,LN <= 1000,且均為整數)個長度單位。我們認為切割時僅在整數點處切且沒有木材損失。木匠發現,每一次切割花費的體力與該木棒的長度成正比,不妨設切割長度為1的木棒花費1單位體力。例如:若N=3,L1 = 3,L2 = 4,L3 = 5,則木棒原長為12,木匠可以有多種切法,如:先將12切成3+9.,花費12體力,再將9切成4+5,花費9體力,一共花費21體力;還可以先將12切成4+8,花費12體力,再將8切成3+5,花費8體力,一共花費20體力。顯然,后者比前者更省體力。那么,木匠至少要花費多少體力才能完成切割任務呢?Input
第1行:1個整數N(2 <= N <= 50000)第2 - N + 1行:每行1個整數Li(1 <= Li <= 1000)。Output
輸出最小的體力消耗。Input示例
3345Output示例
19

思路:

優先隊列水題。

代碼:

#include <bits/stdc++.h>using namespace std;const int MAXN = 1e5 + 10;int a[MAXN];int main() {    int n;    scanf("%d", &n);    PRiority_queue <int, vector <int>, greater <int> > que;    for (int i = 1; i <= n; i++) {        scanf("%d", &a[i]);        que.push(a[i]);    }    int ans = 0;    while (que.size() > 1) {        int x = que.top(); que.pop();        int y = que.top(); que.pop();        que.push(x + y);        ans += x + y;    }    printf("%d/n", ans);    return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 91精品国产乱码久久桃 | 国产午夜免费福利 | 久久99精品久久久久久秒播放器 | 国产精品久久久久久久久久久久午夜 | 性大片1000免费看 | h久久| 羞羞羞网站 | 日本成人二区 | 免费久久久久 | 国产精品嘿咻嘿咻在线播放 | 国产成人午夜精品 | 香蕉视频1024 | 黄色片网站免费观看 | 日韩大片在线永久观看视频网站免费 | 午夜精品毛片 | 国产精品久久久久久238 | 亚洲va久久久噜噜噜久久男同 | 日本欧美一区 | 久久精品亚洲精品国产欧美kt∨ | 高清国产午夜精品久久久久久 | 国产男女 爽爽爽爽视频 | 可以看逼的视频 | 精品国产一区二区三区久久久 | 成年免费网站 | 韩国一级免费视频 | 九九热国产在线 | 看免费5xxaaa毛片 | 精品不卡| 久久手机在线视频 | 狠狠干b| 免费毛片在线视频 | 国产日韩精品欧美一区视频 | 久草在线资源福利站 | 黄污网站在线观看 | 羞羞的动漫在线观看 | 性欧美性欧美 | 国产91久久精品 | 久久激情免费视频 | av在线等 | 沉沦的校花奴性郑依婷c到失禁 | 免费嗨片首页中文字幕 |