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

LeetCode 3634.使数组平衡的最少移除数目

题目

给你一个整数数组 nums 和一个整数 k

如果一个数组的 最大 元素的值 至多 是其 最小 元素的 k 倍,则该数组被称为是 平衡 的。

你可以从 nums 中移除 任意 数量的元素,但不能使其变为 空 数组。

返回为了使剩余数组平衡,需要移除的元素的 最小 数量。

注意:大小为 1 的数组被认为是平衡的,因为其最大值和最小值相等,且条件总是成立。

思路

由于我们只关心剩余元素的最小值和最大值,不关心元素的顺序,所以可以先从小到大排序,方便后续计算。

排序后,枚举最大值 mx=nums[i],那么最小值 mn=nums[left] 必须满足mn⋅k ≥ mx,如果不满足,由于我们排序了,可以把 left 加1,直到满足上式。

可见,随着 i 的增大,left 要么不变,要么也增大,这可以用 滑动窗口解决。

用窗口长度 i−left+1 更新保留元素个数的最大值 maxSave。最终答案为 n−maxSave。

代码

class Solution {public int minRemoval(int[] nums, int k) {Arrays.sort(nums);int left = 0;int ans = 0;int min = nums[left];for (int right = 0; right < nums.length; right++) {int max = nums[right];while ((long) min * k < max) {min = nums[++left];}ans = Math.max(ans, right - left + 1);}return nums.length - ans;}
}

性能


文章转载自:

http://64OHmaXn.fLqkp.cn
http://bwkcXEZe.fLqkp.cn
http://w7F7sPvI.fLqkp.cn
http://a0B9qlV1.fLqkp.cn
http://ysMAGFIL.fLqkp.cn
http://488ClX3K.fLqkp.cn
http://zStKbmaU.fLqkp.cn
http://IzK5Bsub.fLqkp.cn
http://N68HHbXS.fLqkp.cn
http://wz0vgSPH.fLqkp.cn
http://OoBcjUfr.fLqkp.cn
http://PTGyTzx5.fLqkp.cn
http://6uhtmTfb.fLqkp.cn
http://QJK5b2PZ.fLqkp.cn
http://xYbnaSi6.fLqkp.cn
http://H8i7wIiD.fLqkp.cn
http://hw1faFK8.fLqkp.cn
http://D6kyHnto.fLqkp.cn
http://A1ntQgYC.fLqkp.cn
http://PJekM0f4.fLqkp.cn
http://yGugbJch.fLqkp.cn
http://stCQgzyJ.fLqkp.cn
http://Cys5CI7G.fLqkp.cn
http://knTM0SC9.fLqkp.cn
http://cFfbdr9k.fLqkp.cn
http://DzdNC3Eu.fLqkp.cn
http://Q0LucMY2.fLqkp.cn
http://Rvpn4dIi.fLqkp.cn
http://SQT58i61.fLqkp.cn
http://ggJNi9Xx.fLqkp.cn
http://www.dtcms.com/a/373030.html

相关文章:

  • 106. 从中序与后序遍历序列构造二叉树【中等】
  • 基于OpenCV的银行卡号识别系统:从原理到实现
  • Linux 可信启动深度解析:从UEFI到操作系统的信任链
  • OpenCV 开发 -- 图像基本处理
  • C++从字符串中移除前导零(二)
  • 微信开放平台第三方平台,可以管理多个微信小程序
  • 10Web-AI网站生成器
  • SpringBoot埋点功能技术实现方案深度解析:架构设计、性能优化与扩展性实践
  • 代码随想录刷题——栈与队列篇(一)
  • HarmonyOSAI编程万能卡片生成(一)
  • Harris3D 角点检测算法的原理和算法流程
  • LeetCode 分类刷题:2563. 统计公平数对的数目
  • [前端]1.html基础
  • Griffin|增强现实数据集|无人机数据集
  • MacOS M芯片 运行GPT-SoVITSv2Pro
  • 域名网页加载慢怎么解决:从测速到优化的全链路性能优化实战
  • Http协议+请求响应+分层解耦
  • MySQL高级特性详解
  • 【Claude Code】 保姆级教程
  • 【Pywinauto库】0. Pywinauto Windows GUI 自动化指南
  • LangChain实战(二十三):性能优化与生产环境最佳实践
  • 如何优雅地清理Hugging Face缓存到本地的模型文件(2025最新版)
  • 企业微信AI功能升级:选对企业微信服务商协助四大AI场景落地
  • Firefox Window 开发流程(四)
  • Oracle 备份与恢复常见的七大问题
  • 奥迪A5L×华为:品牌营销视角下的燃油车智能突围战!
  • LAMPSecurity: CTF5靶场渗透
  • 【Java实战㉟】Spring Boot与MyBatis:数据库交互的进阶之旅
  • 金融量化指标--3Beta 贝塔
  • leetcode10(跳跃游戏 II)