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

力扣3679. 使库存平衡的最少丢弃次数

在这里插入图片描述
在这里插入图片描述
这一题的大意是在第i天和最近的max(1,i-w+1)天中的物品,如果超过了m次,那么就必须被丢弃,只能丢弃当天的物品。
很明显是维护一个滑动窗口,在窗口内如果有物品超过了m,就把当天的丢弃,并需要把这个物品标记成已经丢弃的状态,因为在滑动窗口发生变换的时候,左边的边界往前移动的时候,会丢掉原来的左边界,而原来的边界可能是已经被丢掉过的,会重复丢弃,因此应该对丢弃的物品作标记。
完整代码如下:

class Solution {
public:int minArrivalsToDiscard(vector<int>& arrivals, int w, int m) {int ans=0;unordered_map<int,int> mp;for(int i=0;i<arrivals.size();i++){if(i+1-w+1>1&&arrivals[i+1-w+1-2]!=0){mp[arrivals[i+1-w+1-2]]--;}mp[arrivals[i]]++;if(mp[arrivals[i]]>m){ans++;mp[arrivals[i]]--;arrivals[i]=0;}}return ans;}
};

总结:题目是滑动窗口的模板题,但唯一需要注意的一点就是已经丢掉的物品,我们要对它进行标记,标记为0,否则在左窗口发生移动的时候,会把它重复丢弃。
本质还是要理解清题意。

http://www.dtcms.com/a/414849.html

相关文章:

  • LeetCode:75.前K个高频元素
  • MySQL 基础指令全解析:从入门到熟练操作
  • 南华 NHZ-03/10/13 型滚筒反力式制动检验台:传统制动检测的核心设备
  • 企业网站开发注册网站开发目录结构
  • 做网站哪个公司好 快选宁陵建站宝互联网行业简介
  • cloudfared 内网穿透通过docker方式遇到的问题
  • 利用汇出与汇入函式协助自动化程式开发
  • iis网站域名访问辽宁工程招标网信息平台
  • 网站开发模板系统myphoto wordpress 国外
  • UART,IIC,SPI串行通信优缺点
  • debian12 安装pve
  • DM存储过程和函数中常用的变量、循环、游标、抛出异常
  • php网站开发怎么样西安网站维护 策划
  • 写csv测试
  • 网站访问不了的原因app运营
  • 一种物联网的节水灌溉系统(论文+源码)
  • 配置AC5(ARM Compiler 5)编译器
  • 合肥中科大网站开发wordpress5.0版本恢复到旧版本
  • 网站开发人员要求仿中国加盟网站源码
  • MySQL InnoDB持久化统计信息详解
  • 深入解析MySQL InnoDB Purge机制
  • 网站公司建立wordpress 分页不出来
  • 做英文的小说网站有哪些网站入口你会回来感谢我的
  • 基于神经网络的简单PID控制
  • 神经网络之仿射变换
  • PINN物理信息神经网络驱动的材料学二维热传导方程求解MATLAB代码
  • Docker(二)
  • 基于 PyTorch 完全从零手搓 GPT 混合专家 (MOE) 对话模型
  • 【企业架构】TOGAF架构标准规范-数据架构
  • 大疆无人机图传原理:从镜头到屏幕的实时传输解码之旅