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

135. 分发糖果

135. 分发糖果

class Solution:def candy(self, ratings: List[int]) -> int:# 初始值n = ans = len(ratings)i = 0while i < n :# 从start开始,如果i>0且数组此时递增,则从前一位算起# 否则从当前i算起start = i-1 if i > 0 and ratings[i] > ratings[i-1] else i # 严格递增区间while i + 1  < n and ratings[i+1] > ratings[i]:i += 1top = i # 严格递减区间while i + 1  < n and ratings[i+1] < ratings[i]:i+=1inc = top -startdec = i-top# 递增/减段的额外糖果(等差数列求和)+峰顶的额外糖果(保证满足左右两侧)ans += ((inc-1)*inc + dec*(dec-1))//2 +max(inc,dec)i+= 1return ans

http://www.xdnf.cn/news/937225.html

相关文章:

  • 【P2P】直播网络拓扑及编码模式
  • 【2025年6月8日】Claude 4 国内使用全攻略
  • 【优选算法】模拟 问题算法
  • CompletableFuture+线程池使用案列
  • 直观地理解程序的堆和栈
  • Go 语言中的内置运算符
  • LLMs之Structured Output:vLLM 结构化输出指南—从约束生成到自动解析与高效实现
  • 算法工程师认知水平要求总结
  • (javaEE)网络原理-初识 局域网和广域网 ip地址和端口号 协议 五元组 协议分层 OSI七层模型 网络数据通信的基本流程
  • (二)原型模式
  • AI短视频创富营
  • Go语言系统监控实战:gopsutil库全面解析与应用
  • nginx部署
  • K8S认证|CKS题库+答案| 8. 沙箱运行容器 gVisor
  • 安装Openstack
  • 编程技巧(基于STM32)第二章 全功能按键非阻塞式实现按键单击、双击和长按
  • 【agent开发】VS Code连接WSL失败解决
  • 实验一:数据选择器实验
  • Go语言中的if else控制语句
  • DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
  • masm32汇编实现扫雷进程注入
  • 第1课、LangChain 介绍
  • 算法-数论
  • Java线程池核心原理与最佳实践
  • 永磁同步电机参数辨识算法--IPMSM拓展卡尔曼滤波全参数辨识
  • 73常用控件_QFormLayout的使用
  • 一个自动反汇编脚本
  • 深度学习入门Day3--鱼书学习(2)
  • 前端十种排序算法解析
  • 电压型PHY芯片MDI接口设计