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

石狮网站建设公司哪家好烟台住房和城乡建设局网站

石狮网站建设公司哪家好,烟台住房和城乡建设局网站,公司企业vi设计,如何成立一个网站题目链接:除2! 1.题目解析 1:想让数组所有数之和尽可能小,肯定有个想法,就是我每次选数组中偶数的时候,我必定挑一个最大的,因为我挑一个最大的出来,把它变成一半,这个时…

题目链接:除2!

1.题目解析

1:想让数组所有数之和尽可能小,肯定有个想法,就是我每次选数组中偶数的时候,我必定挑一个最大的,因为我挑一个最大的出来,把它变成一半,这个时候总和减小肯定是最多的

2:我们待会儿是要求所有数组元素的和,数据量有100,000这么大,每个数有10的九次方这么大,有可能超出int的范围,所以我们要用long long来存这个数,看到数据范围的时候,大家一定要小心一点,我们是用int还是用long long

结合示例:最多进行三次操作,把10变成5,接下来最大的值是8,把8变成4,这两个4随便挑一个出来变成2,这时它们的加起来是2+4+2+5+11=24

2.算法原理

解法:每次挑选出,当前数组中最大的偶数,然后减小一半,利用大根堆实现

代码:

#include <iostream>
#include <queue>
using namespace std;typedef long long LL;
int n, k;
priority_queue<int> heap; //默认是大根堆int main()
{cin >> n >> k;LL sum = 0;for (int i = 1; i <= n; ++i){int x; cin >> x;sum += x;//偶数进堆if (x % 2 == 0) heap.push(x);}while (heap.size() && k--){int t = heap.top() / 2;heap.pop();sum -= t;//除完后可能还是偶数//用%不用除,比如10/2=5,5/2=2if (t % 2 == 0) heap.push(t);}cout << sum << endl;return 0;
}

http://www.yayakq.cn/news/208879/

相关文章:

  • 做网站 服务器多少钱一年天津建设信息网站
  • 成都定制网站设胶州建设工程信息网站
  • 网站的建设目标是什么意思招商网站建设定做
  • 简单手机网站开发软件有哪些seo网站的锚文本怎么写
  • 网站开发项目实例常州网站建设要多少钱
  • 信息手机网站模板下载wordpress热门文章查询
  • 国外电商网站有哪些wordpress自定义模板
  • 网站备案必须在公司注册地不用囤货
  • 济南软件优化网站网页版传奇霸主攻略
  • 网站项目开发收费标准长沙百度贴吧
  • 高水平大学建设大学网站遵义网站建公司
  • 视频logo免费生成网站软件精美ppt模板免费下载百度文库
  • 技术支持 淄博网站建设金属加工网站建设
  • 建设微网站项目报告建设网站费用明细
  • 中海外交通建设有限公司网站市场营销计划方案
  • 有口碑的武进网站建设无锡百度网站推广渠道
  • 南宁网站推广系统代写文章的平台有哪些
  • 临沂h5建站南京企业网站建设
  • 做外贸的国际网站有哪些互联网个人信用信息服务平台
  • 域名做网站出售合法吗wordpress 免费博客
  • c2c电子商务网站需具备哪些业务功能网页制作教程课程报告
  • python如何建网站建设上海小程序开发费用
  • 易思网站管理系统wordpress的首页
  • 如何做相亲网站智慧团建官方登录
  • 深圳勘察设计协会网站岳阳建设网站哪家好
  • 婚嫁类网站制作视频的软件app免费
  • 北京市网站制作设计photoshop在线工具
  • 网站建设哪家网站建设好网站云主机吗
  • 商品网站wordpress用户创建页面
  • 做一些网站的弹出页面复杂的手游app要多少钱