当前位置: 首页 > 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.lryc.cn/news/492515.html

相关文章:

  • AI写论文指令
  • 2625扁平化嵌套数组
  • QT6学习第五天 第一个QT Quick程序
  • 【开发商城系统】
  • (11)(2.2) BLHeli32 and BLHeli_S ESCs(二)
  • C++ 11重点总结1
  • 海康VsionMaster学习笔记(学习工具+思路)
  • 基于Python语言的Web爬虫设计源码
  • 学习日志 --A5rZ
  • JVM_垃圾收集器详解
  • Javascript Insights: Visualizing Var, Let, And Const In 2024
  • KL散度改写为一个可用于优化的形式
  • Java代码操作Zookeeper(使用 Apache Curator 库)
  • 【Linux】Make/Makefile
  • C++练级计划->《多态》虚函数表,菱形继承多态
  • OkHttp3 - 2. OkHttp的核心组件与架构
  • 异或操作解决一些问题
  • 操作系统之输入输出
  • Centos 安装 Node.js 和 npm
  • C语言——指针初阶(一)
  • React Native 原生开发指南
  • 【前端】JavaScript中的柯里化(Currying)详解及实现
  • 解决 docker 部署 vsftpd 速度慢问题
  • Java基础夯实——2.9 多线程如何共享数据
  • 【Leetcode Top 100】234. 回文链表
  • GitLab指定用户分配合并权限
  • 五,[GXYCTF2019]Ping Ping Ping1
  • 基于STM32的智能无人机自主飞行与目标识别系统设计
  • C 语言数组与函数:核心要点深度剖析与高效编程秘籍
  • 汽车轮毂结构分析有哪些?国产3D仿真分析实现静力学+模态分析