news 2026/5/1 2:15:28

leetcode 3634

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
leetcode 3634

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

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

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

枚举最大值 nums[i],那么最小值 nums[left] 必须满足 nums[left]*k >=nums[i]。由于排序了,所以这些元素在数组中是连续的,问题转化成一个标准的滑动窗口模型。如果不满足上式,则把 left 加一,直到满足上式。

内层循环结束后,用窗口长度 i−left+1 更新保留元素个数的最大值maxSave。最终答案为 n−maxSave。

class Solution { public: int minRemoval(vector<int>& nums, int k) { ranges::sort(nums); int max_save=0,left=0,n=nums.size(); //枚举最大值 for(int i=0;i<n;i++){ while((long long)nums[left]*k<nums[i]) left++; //滑动窗口 max_save=max(max_save,i-left+1); } return n-max_save; } };

tips:下面这种写法会超出时间限制。

class Solution { public: int minRemoval(vector<int>& nums, int k) { ranges::sort(nums); int max_save=0,n=nums.size(); //枚举最大值 for(int i=n-1;i>=0;i--){ int left=0; while((long long)nums[left]*k<nums[i]) left++; max_save=max(max_save,i-left+1); } return n-max_save; } };
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 2:48:22

TranslateGemma-12B-IT实战:法律文档精准翻译案例分享

TranslateGemma-12B-IT实战&#xff1a;法律文档精准翻译案例分享 1. 为什么法律翻译不能靠“差不多就行” 你有没有遇到过这样的情况&#xff1a;一份英文合同里写着“shall be deemed to have occurred”&#xff0c;直译是“应被视为已发生”&#xff0c;但实际在中文法律…

作者头像 李华
网站建设 2026/5/1 2:45:47

JDK21→25升级实战:飞算Java AI专业版帮我自动适配了哪些坑?

技术升级&#xff0c;尤其是核心开发环境的迭代&#xff0c;对于许多开发团队而言往往意味着一场无声的战役。一方面&#xff0c;新版本带来的性能提升、安全加固与语言特性令人向往&#xff1b;另一方面&#xff0c;版本切换背后隐藏的编译失败、API废弃、依赖冲突等问题&…

作者头像 李华
网站建设 2026/5/1 2:45:47

无需代码!用Ollama一键部署Gemma-3-270m的完整指南

无需代码&#xff01;用Ollama一键部署Gemma-3-270m的完整指南 你是否试过在本地跑一个真正轻量、响应快、不卡顿的AI模型&#xff0c;却卡在环境配置、依赖冲突、CUDA版本不匹配上&#xff1f; 你是否想快速验证一个想法、写一段文案、辅助学习或做轻量级内容生成&#xff0c…

作者头像 李华
网站建设 2026/5/1 2:49:15

Qwen3-ASR-1.7B保姆级教程:从上传音频到获取文字结果

Qwen3-ASR-1.7B保姆级教程&#xff1a;从上传音频到获取文字结果 你有没有过这样的经历&#xff1f;会议录音存了一堆&#xff0c;却没时间逐条听写&#xff1b;采访素材录了两小时&#xff0c;整理成文字要花一整天&#xff1b;学生交来的口语作业音频&#xff0c;批改前得先…

作者头像 李华