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

[D1,2] 贪心刷题

文章目录

  • 摆动序列
  • 最大子数组合
  • 买卖股票
  • 跳跃游戏
  • 跳跃2

摆动序列

不像是贪心,只要抓住摆动这个点,前一个上升,那下一个就要下降,记录上一次的状态为1的话,那下一次就要更新为-1,如果上一次为1,这次还为1那就说明不是摆动的

最大子数组合

一层循环,如果当前和<=0,那么就将当前值置为0,如果当前和>已经保存的res,那么更新res

买卖股票

可以多次买入卖出
等价公式:3-1 = 3-2+2-1 因此可以直接计算每天的差值,相加就行

跳跃游戏

重点在于

  1. 当前位置i+当前位置可以跳到的最大位置就是判断的依据 cover = max(i+nums[i], cover);
  2. 当前位置i取多少就是循环的结束条件 for(int i=0; i<=cover; i++)

跳跃2

要想明白两个点
一个是 if(i==cur) 和 cur=next;这两句就隐含了跳跃不会超出覆盖范围
一个是如果不按 for(int i=0; i<nums.size(); i++)这个循环来,若使用 i <= cover 作为循环条件,可能会提前终止遍历,从而无法获取完整的信息。例如,后续的某个位置可能只需一次跳跃就能跳到更远的地方,进而减少总的跳跃次数,但由于提前终止遍历,这个信息就会被遗漏。

for(int i=0; i<nums.size(); i++){next = max(next, i+nums[i]);if(i==cur){res++;if(next>=nums.size()-1) break;cur=next;}
}
http://www.xdnf.cn/news/329113.html

相关文章:

  • 深入剖析GoFrame日志模块:优势、特色与项目实践经验分享
  • 不同大模型对提示词和问题的符号标识
  • C++:买房子
  • 手动写一个vuex的可持续化插件
  • MySQL的行级锁锁的到底是什么?
  • [Windows] Ghost Downloader v3.5.9 开源多线程下载工具
  • Qt开发经验:回调函数的线程归属问题及回调函数中更新控件的问题
  • css识别\n换行
  • SEO关键词与长尾词精准布局策略
  • 海外短剧H5系统开发:技术架构、SEO优化与全球市场突围策略 [2025版]
  • 通过vllm部署qwen3大模型以及基于 vLLM 的 OpenAI 兼容 API 接口调用方法总结
  • Yocto Project概念(一)
  • 外包团队协作效率低,如何优化
  • AI 大模型新浪潮:从 DeepSeek-Prover 到 Qwen3,再到 DeepSeek-R2,迈向自动推理的新时代20250507
  • (四)Java逻辑运算符和位运算符全面解析
  • spring的事件监听
  • 【Machine Learning Q and AI 读书笔记】- 05 利用数据减少过拟合现象
  • 【JAVA】BigDecimal判断是否为0, / by zero的问题修复
  • leetcode 2395. Find Subarrays With Equal Sum
  • MySQL 数据备份与恢复
  • Nginx篇之限制公网IP访问特定接口url实操
  • QUIC协议优化:HTTP_3环境下的超高速异步抓取方案
  • Qt重写相关事件,原来的默认功能是不是丢失了?
  • FFmpeg(7.1版本)编译生成ffplay
  • AI Agent(5):多Agent协作系统
  • 5.6-DAE实现
  • 背单词软件开发英语app开发,超级单词表开发,河南数匠软件开发
  • 数据结构之栈与队列
  • QT6 源(83)篇二:日期类型 QDate 的源代码,及功能测试:日期与字符串互相转换时候的格式指定,
  • 中级注册安全工程师的《安全生产专业实务》科目如何选择专业?