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;
}
相关推荐
lvwangshu2 分钟前
P17723 [SCP-S 2026] 函数 / func 题解
题解·双指针·技巧·性质题·思维好题·推导题
本地化文档1 小时前
llvm-libc-docs-l10n
c语言·github·gitcode·sphinx·llvm·crowdin
文丑颜不良啊1 小时前
LeetCode276~300题目解析
java·leetcode
Felven2 小时前
B. Collecting Game
c语言
Felven2 小时前
C. Removing Smallest Multiples
c语言·开发语言
水饺编程4 小时前
第2章:Linux 基础,重启命令
linux·c语言·汇编
傅科摆 _ py4 小时前
链表力扣复习
数据结构·leetcode·链表
inrichtt5 小时前
第十一课时:串口中断接收与回调函数实战解析
c语言·数据结构·stm32·单片机·嵌入式硬件
潜创微科技5 小时前
CH592:集成 BLE 的青稞 RISC-V 无线 MCU
c语言·单片机·risc-v·无线投屏·低延迟·沁恒
学逆向的6 小时前
C 可变量参数
c语言·开发语言·网络安全