C语言 | Leetcode C语言题解之第55题跳跃游戏

题目:

题解:

cpp 复制代码
#define max(a, b) (((a) > (b)) ? (a) : (b))

bool canJump(int* nums, int numsSize){
    int cover = 0;

    int i;
    // 只可能获取cover范围中的步数,所以i<=cover
    for(i = 0; i <= cover; ++i) {
        // 更新cover为从i出发能到达的最大值/cover的值中较大值
        cover = max(i + nums[i], cover);

        // 若更新后cover可以到达最后的元素,返回true
        if(cover >= numsSize - 1)
            return true;
    }

    return false;
}
相关推荐
x_yeyue1 小时前
2026第十七届蓝桥杯c++B组省赛题解
笔记·算法·蓝桥杯·acm·题解
张二娃同学2 小时前
01_C语言学习路线与开发环境搭建
c语言·开发语言·学习
程序leo源2 小时前
Qt信号与槽深度详解
c语言·开发语言·数据库·c++·qt·c#
老四啊laosi2 小时前
[滑动窗口] 12. 将 x 减到 0 的最小操作数
算法·leetcode·将 x 减到 0 的最小操作数
Simple-Soft3 小时前
指针的高级应用与技巧 - C语言的灵魂
c语言·数据结构·算法
努力努力再努力wz4 小时前
【C++高阶数据结构系列】:时间轮定时器详解:原理分析与代码实现,带你从零手撕时间轮!(附时间轮的实现源码)
c语言·开发语言·数据结构·c++·qt·算法·ui
水饺编程4 小时前
编程基础:令牌粘贴指令,【##】
c语言·c++·windows·visual studio
Chen_harmony4 小时前
十九、数据在内存中的存储
c语言·开发语言
basketball6164 小时前
C 的 malloc/free 与 C++ 的 new/delete 一些区别
c语言·开发语言·c++
爱编码的小八嘎4 小时前
MFC深入-消息映射的实现
c语言