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

【不定长滑动窗口】【灵神题单】【刷题笔记】

采摘水果

  • fruits[i]表示第i棵树上的水果种类
  • 目的是尽可能多收集水果
  • 规矩:
    • 只有两个篮子,且每个篮子只能装一种水果,但是每个篮子能装的总量没限制
    • 一旦开始采摘,就会连续采摘,把两个篮子都用掉
    • 也就是说,采摘到最后一颗,或者遇到第三种水果,没有篮子装了就停止!
class Solution:def totalFruit(self, fruits: List[int]) -> int:n = len(fruits)left = 0res = 0cnt = {}for right in range(n):# 进入窗口,记录到字典中,出现了什么水果,以及采摘了几次if fruits[right] in cnt:cnt[fruits[right]] += 1else:cnt[fruits[right]] = 1# while len(cnt) > 2:cnt[fruits[left]] -= 1if cnt[fruits[left]] == 0:del cnt[fruits[left]]left += 1res = max(res, right - left + 1)return res

http://www.mrgr.cn/news/78305.html

相关文章:

  • mybatisX插件的使用,以及打包成配置
  • 基于 gitlab-runner 实现调度GPU的资源
  • vue实现虚拟列表滚动
  • INT305 Machine Learning
  • 论文笔记:FDTI: Fine-grained Deep Traffic Inference with Roadnet-enriched Graph
  • 鸿蒙UI开发——带农历的日期滑动选择弹窗
  • 【拥抱AI】RAG如何通过分析反馈、识别问题来提高命中率
  • 探索.NET世界的无限可能——带你轻松了解.NET
  • Scala—Map用法详解
  • 图元交互设计
  • 【去毛刺】OpenCV图像处理基础:腐蚀与膨胀操作入门
  • 365天深度学习训练营-第P6周:VGG-16算法-Pytorch实现人脸识别
  • digit_eye开发记录(2): Python读取MNIST数据集
  • 大语言模型LLM的微调中 QA 转换的小工具 txt2excel.py
  • Java AQS(AbstractQueuedSynchronizer):深入剖析
  • v-for产生 You may have an infinite update loop in a component render function
  • 直言抖音电商环境恶化,叶国富也想指点张一鸣
  • 【拥抱AI】RAG如何提高向量化的质量
  • 关于node全栈项目打包发布linux项目问题总集
  • SQL基础入门—— 简单查询与条件筛选
  • ubuntu 安装docker
  • Linux下的火墙管理及优化
  • C语言蓝桥杯组题目
  • WonderJourney 学习笔记
  • Qt获取文件夹下的文件个数(过滤和不过滤的区别)
  • 第 4 章 Java 并发包中原子操作类原理剖析