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;
}
相关推荐
Yupureki14 小时前
《Linux系统编程》19.线程同步与互斥
java·linux·服务器·c语言·开发语言·数据结构·c++
mjhcsp15 小时前
AT_arc205_c [ARC205C] No Collision Moves 题解
开发语言·c++·算法·题解
老四啊laosi15 小时前
[双指针] 4. 力扣--盛最多水的容器
算法·leetcode·装水最多的容器
Rabitebla16 小时前
快速排序(QuickSort)完全指南 —— 从原理到工业级优化
c语言·数据结构·c++·算法·github
XiYang-DING16 小时前
【LeetCode】206. 反转链表
算法·leetcode·链表
liulilittle16 小时前
OPENPPP2 CTCP 协议栈 + 内置 TC Hairpin NAT 内核态程序
c语言·开发语言·网络·c++·信息与通信·通信
_深海凉_16 小时前
LeetCode热题100-合并两个有序链表
算法·leetcode·链表
C++ 老炮儿的技术栈16 小时前
c++ this 指针的用途
c语言·开发语言·c++·windows·qt·github
会编程的土豆16 小时前
【leetcode hot 100】依旧二叉树
算法·leetcode·职场和发展
风舞雪凌月16 小时前
【趣谈】移动系统和桌面系统编程语言思考
java·c语言·c++·python·学习·objective-c·swift