【LeetCode每日一题】2171. 拿出最少数目的魔法豆

2024-1-18

文章目录

        • [2171. 拿出最少数目的魔法豆](https://leetcode.cn/problems/removing-minimum-number-of-magic-beans/)
          • 思路:

2171. 拿出最少数目的魔法豆

在这里插入图片描述

思路:
  1. 对输入的数组进行排序,使得数组中的元素按照升序排列。
  2. 初始化一个变量s用于存储数组中所有元素的和,并遍历数组将每个元素加到s中,计算数组中所有元素的和。
  3. 初始化一个变量ans用于存储最终结果,默认值为s。
  4. 遍历数组中的每个元素,计算移除该元素后,剩余元素的和(即将数组总和减去该元素乘以剩余元素数量),并将其与之前的最小值进行比较取较小值,更新ans。
  5. 返回最小移除次数,即最小的和值。
public long minimumRemoval(int[] beans) {
    Arrays.sort(beans); // 对输入数组进行排序,使得数组中的元素按照升序排列
    long s = 0; // 初始化一个变量s用于存储数组中所有元素的和
    for (int x : beans) {
        s += x; // 遍历数组,将每个元素加到s中,计算数组中所有元素的和
    }
    long ans = s; // 初始化一个变量ans用于存储最终结果,默认值为s
    int n = beans.length; // 获取数组的长度
    for (int i = 0; i < n; ++i) { // 遍历数组中的每个元素
        ans = Math.min(ans, s - (long) beans[i] * (n - i)); // 更新ans,将当前元素与剩余元素的和相减,并与ans比较取较小值
    }
    return ans; // 返回最小移除次数
}

点击移步博客主页,欢迎光临~

偷cyk的图

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/333794.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python如何包含其他路径的模块

python 包含其他路径的模块&#xff1a; 例如目录结构: dir1 |__ init.py |__ module1.py dir2 |__ main.py main.py from dir1 import module1首先需要在 dir1 添加 init.py 文件&#xff0c;该文件可以是空文件。 其次需要将dir1 的父目录添加到python 解释器的&#xf…

小红书投放策略有哪些?品牌运营思路

想要在小红书进行合理的达人投放&#xff0c;离不开一份完备且具备可实施性的达人投放策略。今天我们和大家分享下小红书投放策略有哪些&#xff1f;品牌运营思路&#xff01; 制定小红书达人投放策略&#xff0c;按照以下四个步骤进行即可。 1、投放目的 这里的确定投放目的包…

跟着pink老师前端入门教程-day06

十一、CSS 的背景 通过CSS背景属性&#xff0c;可以给页面元素添加背景样式 背景属性可以设置背景颜色、背景图片、背景平铺、背景图片位置、背景图像固定等。 11.1 背景颜色 background-color 属性定义了元素的背景颜色 一般情况下元素背景颜色默认值是transparent&…

KubeSphere平台使用

KubeSphere官网地址&#xff1a;https://kubesphere.io/zh/ KubeKey一键部署K8S集群&#xff1a;https://kubesphere.io/zh/docs/v3.4/installing-on-linux/introduction/multioverview/ 一台master node&#xff08;初始化主节点&#xff09;、两台 work node&#xff08; joi…

2024-01-15(SpringMVCMybatis)

1.拦截器&#xff1a;如果我们想在多个handler方法(controller中的方法)执行之前或者之后都进行一些处理&#xff0c;甚至某些情况下需要拦截掉&#xff0c;不让handler方法执行&#xff0c;那么就可以使用SpringMVC为我们提供的拦截器。 拦截器和过滤器的区别&#xff1a;过滤…

浏览器插件:Web Scraper 基本用法和抓取页面内容(无需写代码,即可爬取数据)

Web Scraper 是一个浏览器扩展&#xff0c;用于从页面中提取数据(网页爬虫)。对于简单或偶然的需求非常有用&#xff0c;例如正在写代码缺少一些示例数据&#xff0c;使用此插件可以很快从类似的网站提取内容作为模拟数据。从 Chrome 的插件市场安装后&#xff0c;页面 F12 打开…

Python项目——搞怪小程序

1、介绍 使用python编写一个小程序&#xff0c;回答你是猪吗。 点击“是”提交&#xff0c;弹窗并退出。 点击“不是”提交&#xff0c;等待5秒&#xff0c;重新选择。 并且隐藏了关闭按钮。 2、实现 新建一个项目。 2.1、设计UI 使用Qt designer设计一个UI界面&#xff0c…

[bat]0基础实现自动化办公-新建bat脚本文件

一、引言 本文是自动化办公之路的开篇&#xff0c;主要面向0基础同学介绍如何新建一个bat脚本文件。接下来会逐渐深入讲解如何实现自动化办公&#xff0c;如有什么需求场景&#xff0c;可评论区留言&#xff0c;我后面会逐一实现。 二、方案 通过对text文本文档文件改文件后…

DETR 个人理解

DETR 个人理解 目录 DETR 个人理解 概念说明 transformer网络结构 整体流程 损失计算 整体理解 结果说明 论文 代码 参考链接 个人拙见&#xff0c;仅供参考&#xff0c;欢迎指正交流 这篇论文还是挺重要的&#xff0c;因为是transforms用于目标检测的第一篇论文&am…

一、Linux基础

一、Linux 1.1 Linux 的应用领域 1.1.1 个人桌面领域的应用 此领域是 Linux 比较薄弱的环节但是随着发展&#xff0c;近几年 linux 在个人桌面领域的占有率在逐渐提高 1.1.2 服务器领域 linux 在服务器领域的应用是最高的 linux 免费、稳定、高效等特点在这里得到了很好的…

OpenGL:关于渲染窗口在主屏和扩展屏上纹理贴图不一致的问题

自己写了一个例子&#xff0c;将图像纹理贴图到窗口&#xff0c;并且可以设置窗口的起始位置。 原始图像如下 当设置渲染窗口在主屏时&#xff0c;渲染的结果如下 没什么问题。 但是当设置窗口显示在扩展屏时&#xff0c;效果如下 可以看出纹理没有显示完整 网上找一下&…

Spring Boot整合Druid(druid 和 druid-spring-boot-starter)

引言 在现代的Web应用开发中&#xff0c;高性能的数据库连接池是确保应用稳定性和响应性的关键因素之一。Druid是一个开源的高性能数据库连接池&#xff0c;具有强大的监控和统计功能&#xff0c;能够在Spring Boot应用中提供出色的数据库连接管理。本文将研究在Spring Boot中…

【双端队列】【维护单调队列】Leetcode 239 滑动窗口最大值【难】

【双端队列】Leetcode 239 滑动窗口最大值 双端队列的操作解法1 利用双端队列实现单调队列 ---------------&#x1f388;&#x1f388;题目链接 Leetcode 239 滑动窗口最大值&#x1f388;&#x1f388;------------------- 双端队列的操作 创建双端队列&#xff1a;Deque<…

解决字符串类型转数字类型相加结果异常问题

js字符串类型转换数字类型有七种方法&#xff0c;分别是parseInt()&#xff0c;parseFloat()&#xff0c;Math.floor()&#xff0c;乘以数字&#xff08;*1&#xff09;&#xff0c;Number()&#xff0c;双波浪号 (~~number)&#xff0c;一元运算符&#xff08;number&#xff…

npm run dev 启动vue的时候指定端口

使用的是 Vue CLI 来创建和管理 Vue 项目&#xff0c; 可以通过设置 --port 参数来指定启动的端口号。以下是具体的步骤&#xff1a; 打开命令行终端 进入您的 Vue 项目目录 运行以下命令&#xff0c;通过 --port 参数指定端口号&#xff08;例如&#xff0c;这里设置端口号…

学习c语言,函数指针数组

上一个函数指针修改成函数数组

深入详解使用 RabbitMQ 过程中涉及到的多个细节问题(面试可用)

目录 1、基础类问题 2、cluster 相关问题 3、综合性问题 4、参考资料 C软件异常排查从入门到精通系列教程&#xff08;专栏文章列表&#xff0c;欢迎订阅&#xff0c;持续更新...&#xff09;https://blog.csdn.net/chenlycly/article/details/125529931C/C基础与进阶&…

三大3D引擎对比,直观感受AMRT3D渲染能力

作为当前热门的内容呈现形式&#xff0c;3D已经成为了广大开发者、设计师工作里不可或缺的一部分。 用户对于3D的热衷&#xff0c;源于其带来的【沉浸式体验】和【超仿真视觉效果】。借此我们从用户重点关注的四个3D视觉呈现内容&#xff1a; 材质- 呈现多元化内容水效果- 展…

Java开发的审批流系统,前端使用vue,支持常态化工作审批流程

一、项目形式 springbootvueactiviti集成了activiti在线编辑器&#xff0c;快速开发平台&#xff0c;可插拔工作流服务。 二、项目介绍 本项目拥有用户管理&#xff0c;部门管理&#xff0c;代码生成&#xff0c;系统监管&#xff0c;报表&#xff0c;大屏展示&#xff0c;业…

使用C语言实现模型的推理(一)

使用C语言实现模型的推理&#xff08;一&#xff09; WHY&#xff1f;思路整理从怎么把大象放到冰箱里开始怎么让模型推理跑起来 生成一个模型理清楚算子之间的依赖关系获取tensor信息获取依赖信息获取模型的运算图拓扑排序 TO DO其他biasDELEGATE WHY&#xff1f; 现在推理框…