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;
}
相关推荐
不负岁月无痕29 分钟前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
clerly2 小时前
C语言如何实现继承?
c语言·多态·继承·封装·结构体
wengqidaifeng3 小时前
2026 年电赛(TI 杯)H 题:MaxiCamPro、双主控通信、VOFA+ 遥测与可复现实验方法
c语言·单片机·嵌入式硬件
evans在进步3 小时前
LeetCode 2 两数相加:链表模拟加法,Java 图解进位过程
java·leetcode·链表
Hi李耶3 小时前
【LeetCode】557.反转字符串中的单词 III
算法·leetcode·职场和发展
c238564 小时前
C/C++每日一练20
c语言·开发语言·c++
坚持编程的菜鸟4 小时前
模拟实现strncpy
c语言·算法·模拟实现strncpy
CAE二次开发工程师6 小时前
【C语言入门到精通】-基础篇
c语言·开发语言·python
wangwangmoon_light6 小时前
1.1 灵神题单总结_滑动窗口与双指针
leetcode
Navigator_Z9 小时前
LeetCode //C - 1187. Make Array Strictly Increasing
c语言·算法·leetcode