leetcode 45 跳跃问题2 很难的贪心

做此题必须先会55跳跃游戏1,这个题目是纯粹的升级版。

此题虽然是升级版,但是和1的思路差的还挺多。

每次到最远距离mx之前,我们会记录一个his_mx,在到达最远的mx之前,缓存可能能达到的最远距离his_mx,真的到达后再更新mx,并且ans++。这个挺难想的,下次见到结合大模型和代码再想想。

cpp 复制代码
class Solution {
public:
    int jump(vector<int>& nums) {
        int mx = 0, his_mx = 0, ans = 0;
        int n = nums.size();
        if(n <= 1)return 0;
        for(int i=0;i<n;i++)
        {
            int tmp = i + nums[i];
            if(tmp > his_mx)his_mx = tmp;

            if(his_mx >= n-1)return ans+1;

            if(i == mx)
            {
                ans++;
                mx = his_mx;
            }
        }

        return ans;
    }
};
相关推荐
WBluuue13 小时前
Codeforces 1094 Div1+2(ABCDE)
c++·算法
TENSORTEC腾视科技13 小时前
腾视科技大模型一体机解决方案:低成本私有化落地,重塑行业智能应用新格局
大数据·人工智能·科技·算法·ai·零售·大模型一体机
夏日听雨眠13 小时前
数据结构(循环队列)
数据结构·算法·链表
平行侠14 小时前
30MacLaren-Marsaglia算法故事文件
数据结构·算法
灵动小溪14 小时前
claude code工具PC安装部署
人工智能·算法
Asa1213815 小时前
Nature Microbiology|跨微生物界菌株水平传播推断的新算法TRACS
算法
叼烟扛炮15 小时前
C++ 知识点22 函数模板
开发语言·c++·算法·函数模版
Tisfy15 小时前
LeetCode 2553.分割数组中数字的数位:模拟(maybe+翻转)——java也O(1)
java·数学·算法·leetcode·题解·模拟·取模
平行侠15 小时前
33水库抽样 - 从未知大小的流中等概率采样
数据结构·算法
吴声子夜歌15 小时前
Java——Integer与二进制算法
java·算法