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;
}
相关推荐
迷茫、Peanut8 小时前
C语言sizeof和strlen
c语言
卡提西亚9 小时前
leetcode-1438. 绝对差不超过限制的最长连续子数组
算法·leetcode·职场和发展
Java面试题总结9 小时前
LeetCode 93.复原IP地址
算法·leetcode·职场和发展·.net
Bug退散师13 小时前
多路IO复用[select版TCP服务器与poll版TCP服务器]与常用网络编程函数详解
linux·服务器·c语言·网络·驱动开发·tcp/ip
天空'之城13 小时前
C 语言工业级通用组件手写 03:双向链表
c语言·嵌入式开发·双向链表
FREEDOM_X13 小时前
嵌入式——定时器工作原理
linux·c语言·单片机·嵌入式硬件·ubuntu
2401_8275012813 小时前
51单片机(四)DS18B20 数字温度传感器
c语言·51单片机
Frostnova丶15 小时前
(17)LeetCode 41. 缺失的第一个正数
数据结构·算法·leetcode
旖-旎15 小时前
《LeetCode 416 分割等和子集》
c++·算法·leetcode·动态规划·背包问题
不会c+16 小时前
C语言:入门到精通(408考研版)系列七 派生的数据类型
c语言·开发语言