技术栈

[c++刷题]贪心算法.N01

ny_Ann2024-06-22 5:03

题目如上:

首先通过经验分析,要用最少的减半次数,使得数组总和减少至一半以上,那么第一反应就是每次都挑数组中最大的数据去减半,这样可以是每次数组总和值减少程度最大化。

代码思路:利用大根堆去找数据中的最大值,每次减半再次压入大根堆即可。

主要是如何证明贪心策略的正确性 :

我们使用《交换论证法》来证明

圆圈代表每次减半的数,圆圈的个数就代表总操作次数。

上一篇:Zabbix 7.0 LTS 发布 - 企业级开源监控解决方案
下一篇:鸿蒙正在跨越“生态繁荣阈值”
相关推荐
blasit
8 小时前
笔记:Qt C++建立子线程做一个socket TCP常连接通信
c++·qt·tcp/ip
肆忆_
1 天前
# 用 5 个问题学懂 C++ 虚函数(入门级)
c++
不想写代码的星星
2 天前
虚函数表:C++ 多态背后的那个男人
c++
端平入洛
3 天前
delete又未完全delete
c++
端平入洛
4 天前
auto有时不auto
c++
郑州光合科技余经理
5 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
feifeigo123
5 天前
matlab画图工具
开发语言·matlab
dustcell.
5 天前
haproxy七层代理
java·开发语言·前端
norlan_jame
5 天前
C-PHY与D-PHY差异
c语言·开发语言
哇哈哈2021
5 天前
信号量和信号
linux·c++
热门推荐
01GitHub 镜像站点02OpenClaw 使用和管理 MCP 完全指南03OpenClaw + 飞书(Feishu)环境搭建指南04小黑课堂计算机二级WPSoffice题库软件下载安装教程(2026年3月最新版)05Claude Code + GLM4.7 避坑指南:解决 Unable to connect to Anthropic services06Clawdbot部署教程:解决‘gateway token missing’授权问题的完整步骤07OpenClaw优化飞书API 额度已耗尽问题08Window 10部署openclaw报错node.exe : npm error code 12809【OpenClaw 本地实战 Ep.3】突破瓶颈:强制修改 openclaw.json 解锁 32k 上下文记忆10OpenClaw大龙虾机器人完整安装教程