当前位置: 首页 > news >正文

怎么接单做网站/任何小说都能搜到的软件

怎么接单做网站,任何小说都能搜到的软件,应用汇,国外购物平台排行榜为了使消耗的体力最小,每次都应该选择当前重量最小的两堆果子进行合并。可以使用优先队列(小根堆)来实现这个过程,优先队列可以自动维护元素的顺序,每次取出堆顶的两个元素(即最小的两个元素)进…

在这里插入图片描述

为了使消耗的体力最小,每次都应该选择当前重量最小的两堆果子进行合并。可以使用优先队列(小根堆)来实现这个过程,优先队列可以自动维护元素的顺序,每次取出堆顶的两个元素(即最小的两个元素)进行合并,然后将合并后的结果重新插入堆中,重复这个过程直到堆中只剩下一个元素。

【算法思路】

  1. 优先队列的定义:使用 priority_queue<int, vector<int>, greater<int>> pq; 定义一个小根堆,这样每次从堆中取出的元素都是当前最小的元素。
  2. 读入数据:通过循环读入每堆果子的重量,并将其加入优先队列。
  3. 合并过程:当优先队列中的元素数量大于 1 时,取出堆顶的两个元素进行合并,计算合并的消耗并累加到 totalCost 中,然后将合并后的结果重新插入优先队列。
  4. 输出结果:当优先队列中只剩下一个元素时,合并过程结束,输出 totalCost,即最小的体力消耗值。

【代码示例】

#include<iostream>
#include<vector>
#include<queue>
using namespace std;int main(){int n;cin>>n;//定义小根堆 priority_queue<int,vector<int>,greater<int>> pq;//读入每堆果子的重量并加入优先队列 int i;for(i=0; i<n; ++i){int weight;cin>>weight;pq.push(weight);}int totalCost = 0;//当堆中元素数量大于1时,继续合并while(pq.size() > 1){//取出最小的两堆果子int a = pq.top();//获取不移除pq.pop();//移除int b = pq.top();pq.pop();//计算合并这两堆果子的消耗int cost = a+b; totalCost += cost;//将合并后的果子堆加入优先队列 pq.push(cost);} //输出最小的体力消耗值 cout<<totalCost<<endl;return 0;
}
http://www.whsansanxincailiao.cn/news/31963260.html

相关文章:

  • 建设部门户网站条例免费下载/2345网址导航主页
  • 网站建设需求分析调研/成都sem优化
  • 商城网站建设源码/平台交易网
  • 网站开发是网站后台开发吗/上海seo搜索优化
  • 网站源码酒类/广东做seo的公司
  • 如何修改asp网站栏目/培训心得体会200字
  • 企业宣传网站源码/网站的优化seo
  • 大学生免费服务器/代做seo关键词排名
  • 织梦网站404怎么做/怎么优化一个网站
  • 武汉光谷未来学校/seo网站快速整站优化技术
  • 网站备案 取消/营销渠道名词解释
  • 网站建设的威胁/石家庄seo优化
  • 莱特币做空网站/武汉网站排名提升
  • 云服务器建设网站/林哥seo
  • 百度做的网站靠谱吗/优化seo教程
  • 小米网站制作/怎么优化网站
  • 网站菜单导航怎么做的/2024年将爆发新瘟疫
  • 河北邯郸做移动网站/ip子域名大全
  • 佛山建网站定制/女装标题优化关键词
  • 淘宝客网站开发视频教程/谷歌优化工具
  • 建筑学院网站/南宁白帽seo技术
  • 网站制作图书/自助建站网站哪个好
  • 做网站编辑的感受/搜狗站长推送工具
  • 网站后端性能优化措施/武汉百度推广优化
  • 邮箱网站架构/直销产业发展论坛
  • 图书馆网站建设所需资料/广州最新发布最新
  • 汽车4S店网站建设/四川二级站seo整站优化排名
  • 广西南宁网站公司/惠州网站seo排名优化
  • wordpress如何获取视频封面/沈阳百度推广优化
  • 找兼职工作在家做哪个网站好/杭州排名推广