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

leetcode_2558 从数量最多的堆取走礼物

1. 题意

给定一个数组,每次从中取走最大的数,返回开根号向下取整送入堆中,最后计算总和。

从数量最多的堆取走礼物

2. 题解

直接用堆模拟即可

2.1 我的代码

用了额外的空间O( n )
priority_queue会自动调用make_heap()pop_heap()

class Solution {
public:long long pickGifts(vector<int>& gifts, int k) {priority_queue<int, vector<int>, less<> > maxHeap(gifts.begin(), gifts.end());long long ans = 0;for ( int i = 0; i < k; ++i) {int p = maxHeap.top();if (p == 1) break;maxHeap.pop();maxHeap.push( (int) sqrt(p));}while (!maxHeap.empty()) {ans += maxHeap.top();maxHeap.pop();}return ans;}
};
2.2 更简的代码

直接在原数组上建堆就可以了

class Solution {
public:long long pickGifts(vector<int>& gifts, int k) {make_heap(gifts.begin(), gifts.end(), less<int>());for ( int i = 0; i < k; ++i) {pop_heap(gifts.begin(), gifts.end() );gifts.back() = sqrt(gifts.back());push_heap(gifts.begin(), gifts.end());}return accumulate(gifts.begin(), gifts.end(), 0ll );}
};

相关文章:

leetcode_2558 从数量最多的堆取走礼物

1. 题意 给定一个数组&#xff0c;每次从中取走最大的数&#xff0c;返回开根号向下取整送入堆中&#xff0c;最后计算总和。 从数量最多的堆取走礼物 2. 题解 直接用堆模拟即可 2.1 我的代码 用了额外的空间O( n ) priority_queue会自动调用make_heap() 、pop_heap() c…...

01. 嵌入式与人工智能是如何结合的?

CPU是Arm A57的 GPU是128cuda核 一.小车跟踪的需求和设计方法 比如有一个小车跟踪的项目。 需求是&#xff1a;小车识别出罪犯&#xff0c;然后去跟踪他。方法&#xff1a;摄像头采集到人之后传入到开发板&#xff0c;内部做一下识别&#xff0c;然后控制小车去跟随。在人工智…...

vue3.0运行npm run dev 报错Cannot find module node:url

vue3.0运行npm run dev 报错Cannot find module 问题背景 近期用vue3.0写项目&#xff0c;npm init vuelatest —> npm install 都正常,npm run dev的时候报错如下&#xff1a; failed to load config from F:\code\testVue\vue-demo\vite.config.js error when starting…...

26. 删除排序数组中的重复项、Leetcode的Python实现

博客主页&#xff1a;&#x1f3c6;看看是李XX还是李歘歘 &#x1f3c6; &#x1f33a;每天分享一些包括但不限于计算机基础、算法等相关的知识点&#x1f33a; &#x1f497;点关注不迷路&#xff0c;总有一些&#x1f4d6;知识点&#x1f4d6;是你想要的&#x1f497; ⛽️今…...

荣耀推送服务消息分类标准

前言 为了提升终端用户的推送体验、营造良好可持续的通知生态&#xff0c;荣耀推送服务将对推送消息进行分类管理。 消息分类 定义 荣耀推送服务将根据应用类型、消息内容和消息发送场景&#xff0c;将推送消息分成服务通讯和资讯营销两大类别。 服务通讯类&#xff0c;包…...

[数据结构]-二叉搜索树

前言 作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正。 目录 一、二叉搜…...

力扣每日一题79:单词搜索

题目描述&#xff1a; 给定一个 m x n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 单词必须按照字母顺序&#xff0c;通过相邻的单元格内的字母构成&#xff0c;其中“相邻”单元格…...

ChatGPT如何应对用户提出的道德伦理困境?

ChatGPT在应对用户提出的道德伦理困境时&#xff0c;需要考虑众多复杂的因素。道德伦理问题涉及到价值观、原则、社会和文化背景&#xff0c;以及众多伦理理论。ChatGPT的设计和应用需要权衡各种考虑因素&#xff0c;以确保它不仅提供有用的信息&#xff0c;而且遵循伦理标准。…...

SpringBoot运行流程源码分析------阶段三(Spring Boot外化配置源码解析)

Spring Boot外化配置源码解析 外化配置简介 Spring Boot设计了非常特殊的加载指定属性文件&#xff08;PropertySouce&#xff09;的顺序&#xff0c;允许属性值合理的覆盖&#xff0c;属性值会以下面的优先级进行配置。home目录下的Devtool全局设置属性&#xff08;~/.sprin…...

环形链表-力扣

一、题目描述 题目链接&#xff1a;力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 二、题解 解题思路&#xff1a; 快慢指针&#xff0c;即慢指针一次走一步&#xff0c;快指针一次走两步&#xff0c;两个指针从链表起始位置开始运行&#xff0c;…...

人生岁月年华

人生很长吗&#xff1f;不知道。只知道高中坐在教室里&#xff0c;闹哄哄的很难受。也记得上班时无聊敲着代码也很难受。 可是人生也不长。你没有太多时间去试错&#xff0c;你没有无限的时间精力去追寻你认为的高大上。 人生是何体验呢&#xff1f;人生的感觉很多吧。大多数…...

电脑QQ如何录制视频文件?

听说QQ可以录制视频&#xff0c;还很方便&#xff0c;请问该如何录制呢&#xff1f;是需要先打开QQ才可以录制吗&#xff1f;还是可以直接使用快捷键进行录制呢&#xff1f;录制的质量又如何呢&#xff1f; 不要着急&#xff0c;既然都打开这篇文章看了&#xff0c;那小编今天…...

python:多波段遥感影像分离成单波段影像

作者:CSDN @ _养乐多_ 在遥感图像处理中,我们经常需要将多波段遥感影像拆分成多个单波段图像,以便进行各种分析和后续处理。本篇博客将介绍一个用Python编写的程序,该程序可以读取多波段遥感影像,将其拆分为单波段图像,并保存为单独的文件。本程序使用GDAL库来处理遥感影…...

天堂2游戏出错如何解决

运行游戏时出现以下提示&#xff1a;“the game may not be consistant because AGP is deactivated please activate AGP for consistancy” 这个问题的原因可能是由于您的显示卡的驱动或者主板的显示芯片组的驱动不是新开。或您虽然已经更新了您的显示卡的驱动程序&#xff0…...

『力扣刷题本』:合并两个有序链表(递归解法)

一、题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例 2&#xff1a; 输入&#xff1a;l1 [], l2 [] 输出&#x…...

C++设计模式_12_Singleton 单件模式

在之前的博文C57个入门知识点_44&#xff1a;单例的实现与理解中&#xff0c;已经详细介绍了单例模式&#xff0c;并且根据其中内容&#xff0c;单例模式已经可以在日常编码中被使用&#xff0c;本文将会再做梳理。 Singleton 单件模式可以说是最简单的设计模式&#xff0c;但由…...

67 内网安全-域横向smbwmi明文或hash传递

#知识点1: windows2012以上版本默认关闭wdigest&#xff0c;攻击者无法从内存中获取明文密码windows2012以下版本如安装KB2871997补丁&#xff0c;同样也会导致无法获取明文密码针对以上情况&#xff0c;我们提供了4种方式解决此类问题 1.利用哈希hash传递(pth&#xff0c;ptk等…...

面向对象(类/继承/封装/多态)详解

简介: 面向对象编程&#xff08;Object-Oriented Programming&#xff0c;OOP&#xff09;是一种广泛应用于软件开发的编程范式。它基于一系列核心概念&#xff0c;包括类、继承、封装和多态。在这篇详细的解释中&#xff0c;我们将探讨这些概念&#xff0c;并说明它们如何在P…...

【Python机器学习】零基础掌握GradientBoostingRegressor集成学习

如何精准预测房价? 当人们提到房价预测时,很多人可能会想到房地产经纪人或专业的评估师。但是,有没有一种更科学、更精确的方法来预测房价呢?答案是有的,这就要用到机器学习中的一种算法——梯度提升回归(Gradient Boosting Regressor)。 假设现在有一组房屋数据,包括…...

【tio-websocket】12、应用层包—Packet

Packet 介绍 Packet 是用于表述业务数据结构的,我们通过继承 Packet 来实现自己的业务数据结构,对于各位而言,把 Packet 看作是一个普通的 VO 对象即可。 public class Packet implements java.io.Serializable, Cloneable {private static Logger log = LoggerFac…...

Windows安全中心总提示驱动不兼容?手把手教你清理老旧驱动,为内存完整性扫清障碍

Windows驱动深度清理指南&#xff1a;彻底解决内存完整性兼容性问题 每次打开Windows安全中心&#xff0c;那个刺眼的"驱动不兼容"提示总让人心烦&#xff1f;这不仅仅是烦人的弹窗问题&#xff0c;更是系统安全与性能的潜在威胁。作为长期使用Windows的资深用户&…...

Python类与对象实战:从简历模板到动态方法绑定的完整指南

Python类与对象实战&#xff1a;从简历模板到动态方法绑定的完整指南 面向对象编程&#xff08;OOP&#xff09;是现代编程语言的核心范式之一&#xff0c;而Python作为一门多范式语言&#xff0c;其面向对象特性尤为强大且易于使用。本文将通过构建一个简历模板系统的完整案例…...

GWAS 实战指南:基因型数据格式转换工具全解析

1. 基因型数据格式入门&#xff1a;从VCF到BED的全面解析 做GWAS分析就像玩拼图游戏&#xff0c;而基因型数据格式就是那些形状各异的拼图块。我刚入门时最头疼的就是各种数据格式的转换&#xff0c;直到在实验室熬了三个通宵才摸清门道。现在我就把这些年踩过的坑和总结的经验…...

Win11系统下MongoDB的安装与配置全攻略

1. MongoDB简介与环境准备 MongoDB作为当前最流行的NoSQL数据库之一&#xff0c;以其灵活的文档存储结构和出色的扩展性深受开发者喜爱。在Win11系统上部署MongoDB&#xff0c;可以轻松搭建本地开发环境或小型生产环境。我最近在帮团队搭建测试环境时&#xff0c;发现很多新手…...

Z-Image-Turbo_Sugar脸部Lora应用探索:游戏NPC角色脸谱AI生成工作流

Z-Image-Turbo_Sugar脸部Lora应用探索&#xff1a;游戏NPC角色脸谱AI生成工作流 1. 什么是Z-Image-Turbo_Sugar脸部Lora Z-Image-Turbo_Sugar脸部Lora是一个专门用于生成特定风格脸部图像的AI模型。它基于Z-Image-Turbo模型&#xff0c;通过Lora技术进行了精细调优&#xff0…...

ChatDev SaaS平台终极指南:如何用AI多智能体技术10分钟开发专业软件

ChatDev SaaS平台终极指南&#xff1a;如何用AI多智能体技术10分钟开发专业软件 【免费下载链接】ChatDev 该项目利用由大型语言模型&#xff08;LLM&#xff09;驱动的多智能体协作技术&#xff0c;以自然语言概念为输入&#xff0c;实现定制化软件的开发过程。 项目地址: h…...

从零开始:如何使用nanorc为你的专属编程语言创建语法高亮

从零开始&#xff1a;如何使用nanorc为你的专属编程语言创建语法高亮 【免费下载链接】nanorc Improved Nano Syntax Highlighting Files 项目地址: https://gitcode.com/gh_mirrors/na/nanorc nanorc是一个为Nano编辑器提供增强语法高亮功能的项目&#xff0c;通过简单…...

双指针-11. 盛最多水的容器

文章目录1.题解2.机考代码3.知识点讲解1.异向双指针力扣地址&#xff1a; 中等&#xff1a;11. 盛最多水的容器1.题解 class Solution {public int maxArea(int[] height) {int maxarea 0, l 0, r height.length - 1;while(l < r){maxarea Math.max(maxarea, Math.min(…...

03-LlamaIndex节点解析:文本分块策略与NodeParser深度应用

03-LlamaIndex节点解析&#xff1a;文本分块策略与NodeParser深度应用 系列导航 01 核心概念与RAG处理管线02 多源数据加载与Data Connectors03 文本分块策略与NodeParser ← 当前04 向量存储与混合索引策略05 Retriever、Query Engine与Chat Engine06 Agent与Workflow编排07 多…...

Wan2.1 VAE网络安全应用:生成对抗性样本以测试图像识别系统鲁棒性

Wan2.1 VAE网络安全应用&#xff1a;生成对抗性样本以测试图像识别系统鲁棒性 1. 引言 想象一下&#xff0c;你公司新部署了一套人脸识别门禁系统&#xff0c;号称准确率高达99.9%。但某天&#xff0c;一个员工只是戴了一副造型奇特的眼镜&#xff0c;系统就把他识别成了另一…...