uva-10954-贪心

题意:俩个数相加,产生的和就是这次加法的代价,问,所有数都加起来,最小代价是多少

解题思路:贪心,每次都选取最小俩个数相加,如果只有一个数,计算完毕,注意,加法的和要再次入队列。

#include <string>
#include<iostream>
#include<map>
#include<memory.h>
#include<vector>
#include<algorithm>
#include<queue>
#include<vector>namespace cc
{using std::cout;using std::endl;using std::cin;using std::map;using std::vector;using std::string;using std::sort;using std::priority_queue;using std::greater;using std::vector;constexpr int N = 5000;priority_queue<int,vector<int>, greater<int> >q;void read(int n){while (q.empty() == false)q.pop();int k = 0;while (n--){cin >> k;q.push(k);}}void solve(){int n;while (cin >> n && n){read(n);int cost = 0;while (q.empty() == false){int sum = 0;int i = q.top();q.pop();if (q.empty() == true)break;int k = q.top();q.pop();sum = i + k;cost =cost+sum;q.push(sum);}cout << cost << endl;}}};int main()
{#ifndef ONLINE_JUDGEfreopen("d://1.text", "r", stdin);
#endif // !ONLINE_JUDGEcc::solve();return 0;
}

posted on 2018-11-10 23:01 好吧,就是菜菜 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/shuiyonglewodezzzzz/p/9941001.html

uva-10954-贪心相关推荐

  1. UVa 10954 Add All 贪心

    贪心   每一次取最小的两个数,注意相加的数也要算' #include<cstring> #include<iostream> #include<cstdio> # ...

  2. UVA 10954 - Add All

    http://uva.onlinejudge.org/external/109/10954.html 题意: 输入一串数据,拿出两个相加,把和放回去,再拿出两个相加,把和放回去--依次循环,最后找出最 ...

  3. uva 10954——Add All

    <p>题意:给定一个序列,然后从中选择两个数,相加后放入原来的序列,消耗的费用为两个数 的和,问最小的代价.</p><p> </p><p>思 ...

  4. Watering Grass UVA - 10382 贪心

    问题 https://vjudge.net/problem/UVA-10382 分析 将一个点的覆盖范围看作是一个长方形,舍弃弓形区域,变成区间覆盖问题,用贪心法 注意:bb-ww/4有可能小于0,要 ...

  5. UVA 10954 Add All

    UVA_10954 看了别人解题报告之后发现累加的过程可以这样操作,每次取最小的两个元素加和,然后把和当作一个新元素放进集合,直到剩下一个元素,然后把中间结果加起来就是要求的结果.实际上这个题目就是哈 ...

  6. 20行代码AC_ 习题8-1 Bin Packing UVA - 1149(贪心+简单二分解析)

    励志用少的代码做高效表达 题意 给定N个物品的中联L1,背包的容量M,同时要求每个背包最多装两个物品,求至少要多少个背包才能装下所有的物品. 解题过程 第一次接触背包类问题. 最初的思路是降序排序,i ...

  7. Parliament UVA - 668 贪心

    问题 https://vjudge.net/problem/UVA-668 这题一开始没读懂题,参考:https://blog.csdn.net/keshuai19940722/article/det ...

  8. 8.6 竞赛题目选讲

    8.6 竞赛题目选讲 量力而行 8-10 抄书 (UVA 714) 把一个包含m个正整数的划分成k个(1<=k<=m<=500)非空的连续子序列,使得每个正整数恰好属于一个序列.设第 ...

  9. π-Algorithmist分类题目(3)

    原题网站:Algorithmist,http://www.algorithmist.com/index.php/Main_Page π-Algorithmist分类题目(3) Probability ...

  10. 紫书《算法竞赛入门经典》

    紫书<算法竞赛入门经典>题目一览 第3章 数组和字符串(例题) UVA 272 TEX Quotes UVA 10082 WERTYU UVA 401 Palindromes UVA 34 ...

最新文章

  1. mysql制作html静态网页6_将数据库中的所有内容生成html静态页面的代码
  2. Android界面编程--使用活动条(ActionBar)--通过ActionBar菜单改变TextView的字体和颜色...
  3. 关于序列建模,是时候抛弃RNN和LSTM了
  4. 视觉智能产品发布 阿里云这项世界第一的技术现在人人可用
  5. Git初学札记(九)————EGit检出远程分支
  6. MVC,MVP,MVVM
  7. 浏览器 JavaScript HTTP 库的大比拼:SugerAgent VS Axios
  8. 1-3-04:带余除法
  9. oracle undo数据文件坏,oracle undo数据文件损坏故障处理案例
  10. 查看数值类型python_Python数据科学实践 | 数据类型
  11. Photoshop 操作显示滞后问题及解决方法
  12. Spring.net(一)----Spring.NET框架简介及模块说明
  13. DB2 表的常用命令
  14. 东南大学计算机考研数学教材,考东南大学计算机的看这里,双非学长逆袭!
  15. 【持续更新】书籍推荐
  16. 如何查看win10电脑系统盘是哪个盘?
  17. iOS开发之企业开发者账号打包发布 App 到服务器上的流程
  18. matlab中求矩阵的迹,求Matlab中矩阵的秩和迹
  19. 2020-10-15(重力场、拖拽、轮播图)
  20. BlueTooth: 蓝牙技术入门者指南

热门文章

  1. 计算机一级考试试题 文明,XP计算机文明基础模拟试题库1.doc
  2. java 图片不更新,图片下传页面不能及时更新,求解
  3. linux系统下如何查看cpu能同时跑几个线程_探讨基于Linux的NUMA系统
  4. C 线程中容易忽视的 restrict 修饰符修饰
  5. mysql语句报错1403_GoldenGate SQL error 1403 mapping 错误解决方案
  6. 360显示html邮件内容,“邮件怎样发送视频内容”的解决方案
  7. ii 组合总和_40. 组合总和 II
  8. 查看cananl是否启动_振动筛无法启动的3大原因及8大注意事项
  9. ocr中文 java_java 中文ocr
  10. 洛谷—— P1875 佳佳的魔法药水